Browse Source

update webpack.config

albertshaw 8 years ago
parent
commit
0fa5c6633d
74 changed files with 128875 additions and 6450 deletions
  1. 5310 0
      build/1.0.0/admin/index.css
  2. 32 0
      build/1.0.0/admin/index.html
  3. 35 0
      build/1.0.0/admin/index.js
  4. 3729 0
      build/1.0.0/admin/login.css
  5. 32 0
      build/1.0.0/admin/login.html
  6. 35 0
      build/1.0.0/admin/login.js
  7. 12401 0
      build/1.0.0/admin/servicesManage/copyright.css
  8. 32 0
      build/1.0.0/admin/servicesManage/copyright.html
  9. 35 0
      build/1.0.0/admin/servicesManage/copyright.js
  10. 12401 0
      build/1.0.0/admin/servicesManage/highTech.css
  11. 32 0
      build/1.0.0/admin/servicesManage/highTech.html
  12. 35 0
      build/1.0.0/admin/servicesManage/highTech.js
  13. 11743 0
      build/1.0.0/admin/servicesManage/patent.css
  14. 32 0
      build/1.0.0/admin/servicesManage/patent.html
  15. 35 0
      build/1.0.0/admin/servicesManage/patent.js
  16. 11052 0
      build/1.0.0/admin/userManage.css
  17. 32 0
      build/1.0.0/admin/userManage.html
  18. 35 0
      build/1.0.0/admin/userManage.js
  19. 0 0
      build/1.0.0/image/bg.jpg
  20. 6321 0
      build/1.0.0/user/account/index.css
  21. 32 0
      build/1.0.0/user/account/index.html
  22. 35 0
      build/1.0.0/user/account/index.js
  23. 12146 0
      build/1.0.0/user/account/services.css
  24. 32 0
      build/1.0.0/user/account/services.html
  25. 35 0
      build/1.0.0/user/account/services.js
  26. 11382 0
      build/1.0.0/user/account/set.css
  27. 32 0
      build/1.0.0/user/account/set.html
  28. 35 0
      build/1.0.0/user/account/set.js
  29. 7188 0
      build/1.0.0/user/certify.css
  30. 32 0
      build/1.0.0/user/certify.html
  31. 35 0
      build/1.0.0/user/certify.js
  32. 7185 0
      build/1.0.0/user/groupCertify.css
  33. 32 0
      build/1.0.0/user/groupCertify.html
  34. 35 0
      build/1.0.0/user/groupCertify.js
  35. 32 0
      build/1.0.0/user/index.html
  36. 20 0
      build/1.0.0/user/index.js
  37. 7266 0
      build/1.0.0/user/login.css
  38. 32 0
      build/1.0.0/user/login.html
  39. 35 0
      build/1.0.0/user/login.js
  40. 7671 0
      build/1.0.0/user/signIn.css
  41. 32 0
      build/1.0.0/user/signIn.html
  42. 35 0
      build/1.0.0/user/signIn.js
  43. 24 0
      build/1.0.0/vendors.js
  44. 299 167
      build/admin/index.css
  45. 9 4
      build/admin/index.js
  46. 442 147
      build/admin/login.css
  47. 9 4
      build/admin/login.js
  48. 1300 826
      build/admin/servicesManage/copyright.css
  49. 9 4
      build/admin/servicesManage/copyright.js
  50. 1300 826
      build/admin/servicesManage/highTech.css
  51. 9 4
      build/admin/servicesManage/highTech.js
  52. 1213 528
      build/admin/servicesManage/patent.css
  53. 9 4
      build/admin/servicesManage/patent.js
  54. 1066 585
      build/admin/userManage.css
  55. 9 4
      build/admin/userManage.js
  56. 605 250
      build/user/account/index.css
  57. 9 4
      build/user/account/index.js
  58. 1223 787
      build/user/account/services.css
  59. 9 4
      build/user/account/services.js
  60. 1278 806
      build/user/account/set.css
  61. 9 4
      build/user/account/set.js
  62. 759 270
      build/user/certify.css
  63. 9 4
      build/user/certify.js
  64. 759 270
      build/user/groupCertify.css
  65. 9 4
      build/user/groupCertify.js
  66. 7 2
      build/user/index.js
  67. 792 401
      build/user/login.css
  68. 9 4
      build/user/login.js
  69. 784 399
      build/user/signIn.css
  70. 9 4
      build/user/signIn.js
  71. 2 2
      build/vendors.js
  72. 84 0
      entry.js
  73. 5 3
      package.json
  74. 98 129
      webpack.config.js

File diff suppressed because it is too large
+ 5310 - 0
build/1.0.0/admin/index.css


+ 32 - 0
build/1.0.0/admin/index.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        管理员-首页
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/admin/index.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/admin/index.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/admin/index.js


File diff suppressed because it is too large
+ 3729 - 0
build/1.0.0/admin/login.css


+ 32 - 0
build/1.0.0/admin/login.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        管理员-登录
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/admin/login.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/admin/login.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/admin/login.js


File diff suppressed because it is too large
+ 12401 - 0
build/1.0.0/admin/servicesManage/copyright.css


+ 32 - 0
build/1.0.0/admin/servicesManage/copyright.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        管理员-科技服务管理-软著
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/admin/servicesManage/copyright.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/admin/servicesManage/copyright.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/admin/servicesManage/copyright.js


File diff suppressed because it is too large
+ 12401 - 0
build/1.0.0/admin/servicesManage/highTech.css


+ 32 - 0
build/1.0.0/admin/servicesManage/highTech.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        管理员-科技服务管理-高企
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/admin/servicesManage/highTech.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/admin/servicesManage/highTech.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/admin/servicesManage/highTech.js


File diff suppressed because it is too large
+ 11743 - 0
build/1.0.0/admin/servicesManage/patent.css


+ 32 - 0
build/1.0.0/admin/servicesManage/patent.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        管理员-科技服务管理-专利
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/admin/servicesManage/patent.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/admin/servicesManage/patent.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/admin/servicesManage/patent.js


File diff suppressed because it is too large
+ 11052 - 0
build/1.0.0/admin/userManage.css


+ 32 - 0
build/1.0.0/admin/userManage.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        管理员-用户管理
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/admin/userManage.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/admin/userManage.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/admin/userManage.js


build/user/image/bg.jpg → build/1.0.0/image/bg.jpg


File diff suppressed because it is too large
+ 6321 - 0
build/1.0.0/user/account/index.css


+ 32 - 0
build/1.0.0/user/account/index.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        用户中心-首页
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/user/account/index.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/account/index.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/user/account/index.js


File diff suppressed because it is too large
+ 12146 - 0
build/1.0.0/user/account/services.css


+ 32 - 0
build/1.0.0/user/account/services.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        用户中心-科技服务
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/user/account/services.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/account/services.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/user/account/services.js


File diff suppressed because it is too large
+ 11382 - 0
build/1.0.0/user/account/set.css


+ 32 - 0
build/1.0.0/user/account/set.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        用户中心-设置
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/user/account/set.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/account/set.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/user/account/set.js


File diff suppressed because it is too large
+ 7188 - 0
build/1.0.0/user/certify.css


+ 32 - 0
build/1.0.0/user/certify.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        个人用户认证
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/user/certify.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/certify.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/user/certify.js


File diff suppressed because it is too large
+ 7185 - 0
build/1.0.0/user/groupCertify.css


+ 32 - 0
build/1.0.0/user/groupCertify.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        团体用户认证
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/user/groupCertify.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/groupCertify.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/user/groupCertify.js


+ 32 - 0
build/1.0.0/user/index.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        用户首页
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+</head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/index.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 20 - 0
build/1.0.0/user/index.js


File diff suppressed because it is too large
+ 7266 - 0
build/1.0.0/user/login.css


+ 32 - 0
build/1.0.0/user/login.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        用户登录
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/user/login.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/login.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/user/login.js


File diff suppressed because it is too large
+ 7671 - 0
build/1.0.0/user/signIn.css


+ 32 - 0
build/1.0.0/user/signIn.html

@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+    <meta charset="utf-8">
+    <title>
+        用户注册
+    </title>
+    <script>
+        // window.userData = {
+        //     mobile: "13600000000",
+        //     nickname: "Lina",
+        //     number: "80000",
+        //     type: "0",
+        //     email: "test@aft.com",
+        //     createTime: "123456789000",
+        //     lvl: "0"
+        // }
+        // window.globalConfig = {
+        //     context: "//aft.hnzhiming.com:8080/aft",
+        //     staticHost: "//aft.hnzhiming.com",
+        //     uploadPath: "/data/wwwroot/aft/upload",
+        //     uploadPrivatePath: "/data/upload"
+        // }
+    </script>
+<link href="http://aftts.hnzhiming.com/1.0.0/user/signIn.css" rel="stylesheet"></head>
+
+<body>
+    <div id="root"></div>
+<script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/user/signIn.js"></script><script type="text/javascript" src="http://aftts.hnzhiming.com/1.0.0/vendors.js"></script></body>
+
+</html>

File diff suppressed because it is too large
+ 35 - 0
build/1.0.0/user/signIn.js


File diff suppressed because it is too large
+ 24 - 0
build/1.0.0/vendors.js


+ 299 - 167
build/admin/index.css

@@ -115,6 +115,7 @@ hr {
 pre {
   font-family: monospace, monospace;
   /* 1 */
+  /* stylelint-disable-line font-family-no-duplicate-names */
   font-size: 1em;
   /* 2 */
 }
@@ -173,6 +174,7 @@ kbd,
 samp {
   font-family: monospace, monospace;
   /* 1 */
+  /* stylelint-disable-line font-family-no-duplicate-names */
   font-size: 1em;
   /* 2 */
 }
@@ -450,10 +452,10 @@ body {
   height: 100%;
 }
 body {
-  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", SimSun, sans-serif;
+  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
   font-size: 12px;
   line-height: 1.5;
-  color: #666;
+  color: rgba(0, 0, 0, 0.65);
   background-color: #fff;
 }
 body,
@@ -527,10 +529,10 @@ a {
   transition: color .3s ease;
 }
 a:hover {
-  color: #79b5ff;
+  color: #80b9ff;
 }
 a:active {
-  color: #549bf2;
+  color: #4386e7;
 }
 a:active,
 a:hover {
@@ -538,7 +540,7 @@ a:hover {
   text-decoration: none;
 }
 a[disabled] {
-  color: #ccc;
+  color: rgba(0, 0, 0, 0.25);
   cursor: not-allowed;
   pointer-events: none;
 }
@@ -573,8 +575,7 @@ samp {
   font-family: 'anticon';
   src: url('https://at.alicdn.com/t/font_r5u29ls31bgldi.eot');
   /* IE9*/
-  src: url('https://at.alicdn.com/t/font_r5u29ls31bgldi.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('https://at.alicdn.com/t/font_r5u29ls31bgldi.woff') format('woff'), /* chrome、firefox */ url('https://at.alicdn.com/t/font_r5u29ls31bgldi.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ url('https://at.alicdn.com/t/font_r5u29ls31bgldi.svg#iconfont') format('svg');
-  /* iOS 4.1- */
+  src: url('https://at.alicdn.com/t/font_r5u29ls31bgldi.eot?#iefix') format('embedded-opentype'), /* chrome、firefox */ url('https://at.alicdn.com/t/font_r5u29ls31bgldi.woff') format('woff'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ url('https://at.alicdn.com/t/font_r5u29ls31bgldi.ttf') format('truetype'), /* iOS 4.1- */ url('https://at.alicdn.com/t/font_r5u29ls31bgldi.svg#iconfont') format('svg');
 }
 .anticon {
   display: inline-block;
@@ -582,7 +583,6 @@ samp {
   vertical-align: baseline;
   text-align: center;
   text-transform: none;
-  text-rendering: auto;
   line-height: 1;
   text-rendering: optimizeLegibility;
   -webkit-font-smoothing: antialiased;
@@ -1264,10 +1264,12 @@ samp {
 .anticon-select:before {
   content: "\E64A";
 }
-.anticon-addfile:before {
+.anticon-addfile:before,
+.anticon-file-add:before {
   content: "\E910";
 }
-.anticon-addfolder:before {
+.anticon-addfolder:before,
+.anticon-folder-add:before {
   content: "\E914";
 }
 .anticon-switcher:before {
@@ -1770,7 +1772,7 @@ samp {
 @keyframes antSwingIn {
   0%,
   100% {
-    transform: translateX(0px);
+    transform: translateX(0);
   }
   20% {
     transform: translateX(-10px);
@@ -2110,14 +2112,150 @@ samp {
   overflow: hidden;
 }
 .ant-motion-collapse-active {
-  transition: height 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
+  transition: height .2s, opacity .2s;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-nav-container {
+  height: 32px;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-ink-bar {
+  visibility: hidden;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab {
+  margin: 0;
+  border: 1px solid #d9d9d9;
+  border-bottom: 0;
+  border-radius: 4px 4px 0 0;
+  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
+  background: #f9f9f9;
+  margin-right: 2px;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab {
+  padding: 5px 16px 4px;
+  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active {
+  background: #fff;
+  transform: translateZ(0);
+  border-color: #d9d9d9;
+  color: #58a3ff;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active {
+  padding-bottom: 5px;
+  transform: translateZ(0);
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-nav-wrap {
+  margin-bottom: 0;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close {
+  margin-right: 0;
+  color: rgba(0, 0, 0, 0.43);
+  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
+  display: inline-block;
+  font-size: 12px;
+  font-size: 9px \9;
+  transform: scale(0.75) rotate(0deg);
+  /* IE6-IE8 */
+  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=1, M12=0, M21=0, M22=1)";
+  zoom: 1;
+  transform-origin: 100% 50%;
+  width: 0;
+  text-align: right;
+  vertical-align: middle;
+  overflow: hidden;
+}
+:root .ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close {
+  filter: none;
+}
+:root .ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close {
+  font-size: 12px;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close:hover {
+  color: #404040;
+  font-weight: bold;
+}
+.ant-tabs.ant-tabs-editable-card > .ant-tabs-bar .ant-tabs-tab:not(.ant-tabs-tab-active):hover {
+  padding-left: 8px;
+  padding-right: 8px;
+}
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active .anticon-close,
+.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab:hover .anticon-close {
+  width: 16px;
+  transform: translateZ(0);
+}
+.ant-tabs-extra-content {
+  float: right;
+  line-height: 32px;
+}
+.ant-tabs-extra-content .ant-tabs-new-tab {
+  width: 20px;
+  height: 20px;
+  line-height: 20px;
+  text-align: center;
+  cursor: pointer;
+  border-radius: 4px;
+  border: 1px solid #d9d9d9;
+  display: inline-block;
+  font-size: 12px;
+  font-size: 10px \9;
+  transform: scale(0.83333333) rotate(0deg);
+  /* IE6-IE8 */
+  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=1, M12=0, M21=0, M22=1)";
+  zoom: 1;
+  color: rgba(0, 0, 0, 0.43);
+  transition: color 0.3s ease;
+}
+:root .ant-tabs-extra-content .ant-tabs-new-tab {
+  filter: none;
+}
+:root .ant-tabs-extra-content .ant-tabs-new-tab {
+  font-size: 12px;
+}
+.ant-tabs-extra-content .ant-tabs-new-tab:hover {
+  color: #404040;
+}
+.ant-tabs-vertical.ant-tabs-card > .ant-tabs-bar .ant-tabs-nav-container {
+  height: auto;
+}
+.ant-tabs-vertical.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab {
+  border-bottom: 1px solid #d9d9d9;
+  margin-bottom: 8px;
+}
+.ant-tabs-vertical.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active {
+  padding-bottom: 4px;
+}
+.ant-tabs-vertical.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab:last-child {
+  margin-bottom: 8px;
+}
+.ant-tabs-vertical.ant-tabs-card.ant-tabs-left > .ant-tabs-bar .ant-tabs-nav-wrap {
+  margin-right: 0;
+}
+.ant-tabs-vertical.ant-tabs-card.ant-tabs-left > .ant-tabs-bar .ant-tabs-tab {
+  border-right: 0;
+  border-radius: 4px 0 0 4px;
+  margin-right: 1px;
+}
+.ant-tabs-vertical.ant-tabs-card.ant-tabs-left > .ant-tabs-bar .ant-tabs-tab-active {
+  margin-right: -1px;
+  padding-right: 18px;
+}
+.ant-tabs-vertical.ant-tabs-card.ant-tabs-right > .ant-tabs-bar .ant-tabs-nav-wrap {
+  margin-left: 0;
+}
+.ant-tabs-vertical.ant-tabs-card.ant-tabs-right > .ant-tabs-bar .ant-tabs-tab {
+  border-left: 0;
+  border-radius: 0 4px 4px 0;
+  margin-left: 1px;
+}
+.ant-tabs-vertical.ant-tabs-card.ant-tabs-right > .ant-tabs-bar .ant-tabs-tab-active {
+  margin-left: -1px;
+  padding-left: 18px;
 }
 .ant-tabs {
   box-sizing: border-box;
   position: relative;
   overflow: hidden;
   zoom: 1;
-  color: #666;
+  color: rgba(0, 0, 0, 0.65);
 }
 .ant-tabs:before,
 .ant-tabs:after {
@@ -2187,12 +2325,12 @@ samp {
   background-color: transparent;
   position: absolute;
   text-align: center;
-  color: #999;
+  color: rgba(0, 0, 0, 0.43);
   transition: color 0.3s ease;
 }
 .ant-tabs-tab-prev:hover,
 .ant-tabs-tab-next:hover {
-  color: #666;
+  color: rgba(0, 0, 0, 0.65);
 }
 .ant-tabs-tab-prev-icon,
 .ant-tabs-tab-next-icon {
@@ -2231,7 +2369,7 @@ samp {
 }
 .ant-tabs-tab-btn-disabled,
 .ant-tabs-tab-btn-disabled:hover {
-  color: #ccc;
+  color: rgba(0, 0, 0, 0.25);
 }
 .ant-tabs-tab-next {
   right: 2px;
@@ -2276,7 +2414,7 @@ samp {
 .ant-tabs-nav .ant-tabs-tab-disabled {
   pointer-events: none;
   cursor: default;
-  color: #ccc;
+  color: rgba(0, 0, 0, 0.25);
 }
 .ant-tabs-nav .ant-tabs-tab {
   display: inline-block;
@@ -2290,10 +2428,10 @@ samp {
   text-decoration: none;
 }
 .ant-tabs-nav .ant-tabs-tab:hover {
-  color: #79b5ff;
+  color: #80b9ff;
 }
 .ant-tabs-nav .ant-tabs-tab:active {
-  color: #549bf2;
+  color: #4386e7;
 }
 .ant-tabs-nav .ant-tabs-tab .anticon {
   width: 14px;
@@ -2310,25 +2448,25 @@ samp {
   margin-right: 0;
   padding: 8px 16px;
 }
-.ant-tabs:not(.ant-tabs-vertical) .ant-tabs-content {
+.ant-tabs:not(.ant-tabs-vertical) > .ant-tabs-content {
   width: 100%;
 }
-.ant-tabs:not(.ant-tabs-vertical) .ant-tabs-content-animated {
-  display: flex;
-  flex-direction: row;
-  will-change: margin-left;
-  transition: margin-left 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
-}
-.ant-tabs:not(.ant-tabs-vertical) .ant-tabs-tabpane {
+.ant-tabs:not(.ant-tabs-vertical) > .ant-tabs-content > .ant-tabs-tabpane {
   flex-shrink: 0;
   width: 100%;
   transition: opacity 0.3s;
   opacity: 1;
 }
-.ant-tabs:not(.ant-tabs-vertical) .ant-tabs-tabpane-inactive {
+.ant-tabs:not(.ant-tabs-vertical) > .ant-tabs-content > .ant-tabs-tabpane-inactive {
   opacity: 0;
   height: 0;
 }
+.ant-tabs:not(.ant-tabs-vertical) > .ant-tabs-content-animated {
+  display: flex;
+  flex-direction: row;
+  will-change: margin-left;
+  transition: margin-left 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
+}
 .ant-tabs-vertical > .ant-tabs-bar {
   border-bottom: 0;
 }
@@ -2407,113 +2545,15 @@ samp {
   margin-bottom: 0;
   margin-top: 16px;
 }
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-nav-container {
-  height: 32px;
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-ink-bar {
-  visibility: hidden;
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab {
-  margin: 0;
-  border: 1px solid #d9d9d9;
-  border-bottom: 0;
-  border-radius: 6px 6px 0 0;
-  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
-  background: #f9f9f9;
-  margin-right: 2px;
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab {
-  padding: 5px 16px 4px;
-  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
+.no-flex > .ant-tabs-content-animated,
+.ant-tabs-no-animation > .ant-tabs-content-animated,
+.ant-tabs-vertical > .ant-tabs-content-animated {
+  transform: none !important;
+  margin-left: 0 !important;
 }
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active {
-  background: #fff;
-  transform: translateZ(0);
-  border-color: #d9d9d9;
-  color: #58a3ff;
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active {
-  padding-bottom: 5px;
-  transform: translateZ(0);
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-nav-wrap {
-  margin-bottom: 0;
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close {
-  margin-right: 0;
-  color: #999;
-  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
-  display: inline-block;
-  font-size: 12px;
-  font-size: 9px \9;
-  transform: scale(0.75) rotate(0deg);
-  /* IE6-IE8 */
-  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=1, M12=0, M21=0, M22=1)";
-  zoom: 1;
-  transform-origin: 100% 50%;
-  width: 0;
-  text-align: right;
-  vertical-align: middle;
-  overflow: hidden;
-}
-:root .ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close {
-  filter: none;
-}
-:root .ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close {
-  font-size: 12px;
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab .anticon-close:hover {
-  color: #404040;
-  font-weight: bold;
-}
-.ant-tabs.ant-tabs-editable-card > .ant-tabs-bar .ant-tabs-tab:not(.ant-tabs-tab-active):hover {
-  padding-left: 8px;
-  padding-right: 8px;
-}
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab-active .anticon-close,
-.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab:hover .anticon-close {
-  width: 16px;
-  transform: translateZ(0);
-}
-.ant-tabs-extra-content {
-  float: right;
-  line-height: 32px;
-}
-.ant-tabs-extra-content .ant-tabs-new-tab {
-  width: 20px;
-  height: 20px;
-  line-height: 20px;
-  text-align: center;
-  cursor: pointer;
-  border-radius: 3px;
-  border: 1px solid #d9d9d9;
-  display: inline-block;
-  font-size: 12px;
-  font-size: 10px \9;
-  transform: scale(0.83333333) rotate(0deg);
-  /* IE6-IE8 */
-  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=1, M12=0, M21=0, M22=1)";
-  zoom: 1;
-  color: #999;
-  transition: color 0.3s ease;
-}
-:root .ant-tabs-extra-content .ant-tabs-new-tab {
-  filter: none;
-}
-:root .ant-tabs-extra-content .ant-tabs-new-tab {
-  font-size: 12px;
-}
-.ant-tabs-extra-content .ant-tabs-new-tab:hover {
-  color: #404040;
-}
-.no-flex .ant-tabs-content-animated,
-.ant-tabs-no-animation .ant-tabs-content-animated,
-.ant-tabs-vertical .ant-tabs-content-animated {
-  transform: none!important;
-}
-.no-flex .ant-tabs-content > .ant-tabs-tabpane-inactive,
-.ant-tabs-no-animation .ant-tabs-content > .ant-tabs-tabpane-inactive,
-.ant-tabs-vertical .ant-tabs-content > .ant-tabs-tabpane-inactive {
+.no-flex > .ant-tabs-content > .ant-tabs-tabpane-inactive,
+.ant-tabs-no-animation > .ant-tabs-content > .ant-tabs-tabpane-inactive,
+.ant-tabs-vertical > .ant-tabs-content > .ant-tabs-tabpane-inactive {
   display: none;
 }
 .ant-row {
@@ -2975,6 +3015,18 @@ samp {
 .ant-col-pull-0 {
   right: auto;
 }
+.ant-col-push-0 {
+  left: auto;
+}
+.ant-col-pull-0 {
+  right: auto;
+}
+.ant-col-offset-0 {
+  margin-left: 0;
+}
+.ant-col-order-0 {
+  order: 0;
+}
 .ant-col-xs-1, .ant-col-xs-2, .ant-col-xs-3, .ant-col-xs-4, .ant-col-xs-5, .ant-col-xs-6, .ant-col-xs-7, .ant-col-xs-8, .ant-col-xs-9, .ant-col-xs-10, .ant-col-xs-11, .ant-col-xs-12, .ant-col-xs-13, .ant-col-xs-14, .ant-col-xs-15, .ant-col-xs-16, .ant-col-xs-17, .ant-col-xs-18, .ant-col-xs-19, .ant-col-xs-20, .ant-col-xs-21, .ant-col-xs-22, .ant-col-xs-23, .ant-col-xs-24 {
   float: left;
   flex: 0 0 auto;
@@ -3372,6 +3424,18 @@ samp {
 .ant-col-pull-0 {
   right: auto;
 }
+.ant-col-xs-push-0 {
+  left: auto;
+}
+.ant-col-xs-pull-0 {
+  right: auto;
+}
+.ant-col-xs-offset-0 {
+  margin-left: 0;
+}
+.ant-col-xs-order-0 {
+  order: 0;
+}
 @media (min-width: 768px) {
   .ant-col-sm-1, .ant-col-sm-2, .ant-col-sm-3, .ant-col-sm-4, .ant-col-sm-5, .ant-col-sm-6, .ant-col-sm-7, .ant-col-sm-8, .ant-col-sm-9, .ant-col-sm-10, .ant-col-sm-11, .ant-col-sm-12, .ant-col-sm-13, .ant-col-sm-14, .ant-col-sm-15, .ant-col-sm-16, .ant-col-sm-17, .ant-col-sm-18, .ant-col-sm-19, .ant-col-sm-20, .ant-col-sm-21, .ant-col-sm-22, .ant-col-sm-23, .ant-col-sm-24 {
     float: left;
@@ -3770,6 +3834,18 @@ samp {
   .ant-col-pull-0 {
     right: auto;
   }
+  .ant-col-sm-push-0 {
+    left: auto;
+  }
+  .ant-col-sm-pull-0 {
+    right: auto;
+  }
+  .ant-col-sm-offset-0 {
+    margin-left: 0;
+  }
+  .ant-col-sm-order-0 {
+    order: 0;
+  }
 }
 @media (min-width: 992px) {
   .ant-col-md-1, .ant-col-md-2, .ant-col-md-3, .ant-col-md-4, .ant-col-md-5, .ant-col-md-6, .ant-col-md-7, .ant-col-md-8, .ant-col-md-9, .ant-col-md-10, .ant-col-md-11, .ant-col-md-12, .ant-col-md-13, .ant-col-md-14, .ant-col-md-15, .ant-col-md-16, .ant-col-md-17, .ant-col-md-18, .ant-col-md-19, .ant-col-md-20, .ant-col-md-21, .ant-col-md-22, .ant-col-md-23, .ant-col-md-24 {
@@ -4169,6 +4245,18 @@ samp {
   .ant-col-pull-0 {
     right: auto;
   }
+  .ant-col-md-push-0 {
+    left: auto;
+  }
+  .ant-col-md-pull-0 {
+    right: auto;
+  }
+  .ant-col-md-offset-0 {
+    margin-left: 0;
+  }
+  .ant-col-md-order-0 {
+    order: 0;
+  }
 }
 @media (min-width: 1200px) {
   .ant-col-lg-1, .ant-col-lg-2, .ant-col-lg-3, .ant-col-lg-4, .ant-col-lg-5, .ant-col-lg-6, .ant-col-lg-7, .ant-col-lg-8, .ant-col-lg-9, .ant-col-lg-10, .ant-col-lg-11, .ant-col-lg-12, .ant-col-lg-13, .ant-col-lg-14, .ant-col-lg-15, .ant-col-lg-16, .ant-col-lg-17, .ant-col-lg-18, .ant-col-lg-19, .ant-col-lg-20, .ant-col-lg-21, .ant-col-lg-22, .ant-col-lg-23, .ant-col-lg-24 {
@@ -4568,6 +4656,18 @@ samp {
   .ant-col-pull-0 {
     right: auto;
   }
+  .ant-col-lg-push-0 {
+    left: auto;
+  }
+  .ant-col-lg-pull-0 {
+    right: auto;
+  }
+  .ant-col-lg-offset-0 {
+    margin-left: 0;
+  }
+  .ant-col-lg-order-0 {
+    order: 0;
+  }
 }
 .ant-menu {
   outline: none;
@@ -4576,7 +4676,7 @@ samp {
   list-style: none;
   z-index: 1050;
   box-shadow: 0 1px 6px rgba(0, 0, 0, 0.2);
-  color: #666;
+  color: rgba(0, 0, 0, 0.65);
   background: #fff;
   line-height: 46px;
 }
@@ -4588,7 +4688,7 @@ samp {
   padding: 0;
 }
 .ant-menu-item-group-title {
-  color: #999;
+  color: rgba(0, 0, 0, 0.43);
   font-size: 12px;
   line-height: 1.5;
   padding: 8px 16px;
@@ -4599,12 +4699,16 @@ samp {
   cursor: pointer;
   transition: all 0.3s ease;
 }
+.ant-menu-item:active,
+.ant-menu-submenu-title:active {
+  background: #f2f8ff;
+}
 .ant-menu-submenu .ant-menu-sub {
   cursor: initial;
 }
 .ant-menu-item > a {
   display: block;
-  color: #666;
+  color: rgba(0, 0, 0, 0.65);
 }
 .ant-menu-item > a:hover {
   color: #58a3ff;
@@ -4628,10 +4732,14 @@ samp {
 }
 .ant-menu-item:hover,
 .ant-menu-item-active,
+.ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open,
 .ant-menu-submenu-active,
 .ant-menu-submenu-title:hover {
   color: #58a3ff;
 }
+.ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open {
+  z-index: 1050;
+}
 .ant-menu-horizontal .ant-menu-item,
 .ant-menu-horizontal .ant-menu-submenu {
   margin-top: -1px;
@@ -4650,7 +4758,7 @@ samp {
   color: #58a3ff;
 }
 .ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected {
-  background-color: #eef6ff;
+  background-color: #f2f8ff;
 }
 .ant-menu-horizontal,
 .ant-menu-inline,
@@ -4663,21 +4771,30 @@ samp {
 }
 .ant-menu-inline .ant-menu-item,
 .ant-menu-vertical .ant-menu-item {
-  border-right: 1px solid #e9e9e9;
+  border-right: 3px solid transparent;
   margin-left: -1px;
   left: 1px;
   position: relative;
   z-index: 1;
 }
-.ant-menu-vertical .ant-menu-sub {
+.ant-menu-vertical.ant-menu-sub {
   border-right: 0;
 }
-.ant-menu-vertical .ant-menu-sub .ant-menu-item {
+.ant-menu-vertical.ant-menu-sub .ant-menu-item {
   border-right: 0;
+  margin-left: 0;
+  left: 0;
+}
+.ant-menu-vertical.ant-menu-sub > .ant-menu-item:first-child {
+  border-radius: 4px 4px 0 0;
+}
+.ant-menu-vertical.ant-menu-sub > .ant-menu-item:last-child,
+.ant-menu-vertical.ant-menu-sub > .ant-menu-item-group:last-child > .ant-menu-item-group-list:last-child > .ant-menu-item:last-child {
+  border-radius: 0 0 4px 4px;
 }
 .ant-menu-inline .ant-menu-selected,
 .ant-menu-inline .ant-menu-item-selected {
-  border-right: 3px solid #58a3ff;
+  border-right-color: #58a3ff;
   transform: translateZ(0);
 }
 .ant-menu-submenu-horizontal > .ant-menu {
@@ -4707,25 +4824,11 @@ samp {
   display: block;
   white-space: nowrap;
 }
-.ant-menu-item.ant-menu-item-disabled,
-.ant-menu-submenu-title.ant-menu-item-disabled,
-.ant-menu-item.ant-menu-submenu-disabled,
-.ant-menu-submenu-title.ant-menu-submenu-disabled {
-  color: #999 !important;
-  cursor: not-allowed;
-  background: none;
-}
-.ant-menu-item.ant-menu-item-disabled > a,
-.ant-menu-submenu-title.ant-menu-item-disabled > a,
-.ant-menu-item.ant-menu-submenu-disabled > a,
-.ant-menu-submenu-title.ant-menu-submenu-disabled > a {
-  color: #999 !important;
-  pointer-events: none;
-}
 .ant-menu-item .anticon,
 .ant-menu-submenu-title .anticon {
   min-width: 14px;
   margin-right: 8px;
+  transition: all .3s;
 }
 .ant-menu > .ant-menu-item-divider {
   height: 1px;
@@ -4809,6 +4912,8 @@ samp {
 .ant-menu-horizontal > .ant-menu-submenu:hover,
 .ant-menu-horizontal > .ant-menu-item-active,
 .ant-menu-horizontal > .ant-menu-submenu-active,
+.ant-menu-horizontal > .ant-menu-item-open,
+.ant-menu-horizontal > .ant-menu-submenu-open,
 .ant-menu-horizontal > .ant-menu-item-selected,
 .ant-menu-horizontal > .ant-menu-submenu-selected {
   border-bottom: 2px solid #58a3ff;
@@ -4817,7 +4922,7 @@ samp {
 .ant-menu-horizontal > .ant-menu-item > a,
 .ant-menu-horizontal > .ant-menu-submenu > a {
   display: block;
-  color: #666;
+  color: rgba(0, 0, 0, 0.65);
 }
 .ant-menu-horizontal > .ant-menu-item > a:hover,
 .ant-menu-horizontal > .ant-menu-submenu > a:hover {
@@ -4829,19 +4934,21 @@ samp {
   height: 0;
   clear: both;
 }
-.ant-menu-vertical > .ant-menu-item,
-.ant-menu-inline > .ant-menu-item,
-.ant-menu-item-group-list > .ant-menu-item,
-.ant-menu-vertical > .ant-menu-submenu > .ant-menu-submenu-title,
-.ant-menu-inline > .ant-menu-submenu > .ant-menu-submenu-title,
-.ant-menu-item-group-list > .ant-menu-submenu > .ant-menu-submenu-title {
-  padding: 0px 16px 0 28px;
+.ant-menu-vertical .ant-menu-item,
+.ant-menu-inline .ant-menu-item,
+.ant-menu-vertical .ant-menu-submenu-title,
+.ant-menu-inline .ant-menu-submenu-title {
+  padding: 0 16px;
   font-size: 12px;
   line-height: 42px;
   height: 42px;
   overflow: hidden;
   text-overflow: ellipsis;
 }
+.ant-menu-item-group-list .ant-menu-item,
+.ant-menu-item-group-list .ant-menu-submenu-title {
+  padding: 0 16px 0 28px;
+}
 .ant-menu-vertical.ant-menu-sub {
   padding: 0;
   transform-origin: 0 0;
@@ -4870,9 +4977,21 @@ samp {
 .ant-menu-sub.ant-menu-inline .ant-menu-item-group-title {
   padding-left: 32px;
 }
+.ant-menu-item-disabled,
+.ant-menu-submenu-disabled {
+  color: rgba(0, 0, 0, 0.25) !important;
+  cursor: not-allowed;
+  background: none;
+  border-color: transparent !important;
+}
+.ant-menu-item-disabled > a,
+.ant-menu-submenu-disabled > a {
+  color: rgba(0, 0, 0, 0.25) !important;
+  pointer-events: none;
+}
 .ant-menu-dark,
 .ant-menu-dark .ant-menu-sub {
-  color: #999;
+  color: rgba(255, 255, 255, 0.67);
   background: #404040;
 }
 .ant-menu-dark .ant-menu-inline.ant-menu-sub {
@@ -4888,8 +5007,9 @@ samp {
   top: 0;
 }
 .ant-menu-dark .ant-menu-item,
+.ant-menu-dark .ant-menu-item-group-title,
 .ant-menu-dark .ant-menu-item > a {
-  color: #999;
+  color: rgba(255, 255, 255, 0.67);
 }
 .ant-menu-dark.ant-menu-inline,
 .ant-menu-dark.ant-menu-vertical {
@@ -4904,6 +5024,7 @@ samp {
 .ant-menu-dark .ant-menu-item:hover,
 .ant-menu-dark .ant-menu-item-active,
 .ant-menu-dark .ant-menu-submenu-active,
+.ant-menu-dark:not(.ant-menu-inline) .ant-menu-submenu-open,
 .ant-menu-dark .ant-menu-submenu-selected,
 .ant-menu-dark .ant-menu-submenu:hover,
 .ant-menu-dark .ant-menu-submenu-title:hover {
@@ -4913,6 +5034,7 @@ samp {
 .ant-menu-dark .ant-menu-item:hover > a,
 .ant-menu-dark .ant-menu-item-active > a,
 .ant-menu-dark .ant-menu-submenu-active > a,
+.ant-menu-dark:not(.ant-menu-inline) .ant-menu-submenu-open > a,
 .ant-menu-dark .ant-menu-submenu-selected > a,
 .ant-menu-dark .ant-menu-submenu:hover > a,
 .ant-menu-dark .ant-menu-submenu-title:hover > a {
@@ -4926,9 +5048,19 @@ samp {
 .ant-menu-dark .ant-menu-item-selected > a:hover {
   color: #fff;
 }
+.ant-menu.ant-menu-dark .ant-menu-item-selected {
+  background-color: transparent;
+}
 .ant-menu-dark.ant-menu-inline .ant-menu-item-selected {
   background-color: #58a3ff;
 }
+.ant-menu-dark .ant-menu-item-disabled,
+.ant-menu-dark .ant-menu-submenu-disabled,
+.ant-menu-dark .ant-menu-item-disabled > a,
+.ant-menu-dark .ant-menu-submenu-disabled > a {
+  opacity: 0.8;
+  color: rgba(255, 255, 255, 0.35) !important;
+}
 .account-top {
   width: 100%;
   height: 84px;

File diff suppressed because it is too large
+ 9 - 4
build/admin/index.js


File diff suppressed because it is too large
+ 442 - 147
build/admin/login.css


File diff suppressed because it is too large
+ 9 - 4
build/admin/login.js


File diff suppressed because it is too large
+ 1300 - 826
build/admin/servicesManage/copyright.css


File diff suppressed because it is too large
+ 9 - 4
build/admin/servicesManage/copyright.js


File diff suppressed because it is too large
+ 1300 - 826
build/admin/servicesManage/highTech.css


File diff suppressed because it is too large
+ 9 - 4
build/admin/servicesManage/highTech.js


File diff suppressed because it is too large
+ 1213 - 528
build/admin/servicesManage/patent.css


File diff suppressed because it is too large
+ 9 - 4
build/admin/servicesManage/patent.js


File diff suppressed because it is too large
+ 1066 - 585
build/admin/userManage.css


File diff suppressed because it is too large
+ 9 - 4
build/admin/userManage.js


File diff suppressed because it is too large
+ 605 - 250
build/user/account/index.css


File diff suppressed because it is too large
+ 9 - 4
build/user/account/index.js


File diff suppressed because it is too large
+ 1223 - 787
build/user/account/services.css


File diff suppressed because it is too large
+ 9 - 4
build/user/account/services.js


File diff suppressed because it is too large
+ 1278 - 806
build/user/account/set.css


File diff suppressed because it is too large
+ 9 - 4
build/user/account/set.js


File diff suppressed because it is too large
+ 759 - 270
build/user/certify.css


File diff suppressed because it is too large
+ 9 - 4
build/user/certify.js


File diff suppressed because it is too large
+ 759 - 270
build/user/groupCertify.css


File diff suppressed because it is too large
+ 9 - 4
build/user/groupCertify.js


File diff suppressed because it is too large
+ 7 - 2
build/user/index.js


File diff suppressed because it is too large
+ 792 - 401
build/user/login.css


File diff suppressed because it is too large
+ 9 - 4
build/user/login.js


File diff suppressed because it is too large
+ 784 - 399
build/user/signIn.css


File diff suppressed because it is too large
+ 9 - 4
build/user/signIn.js


File diff suppressed because it is too large
+ 2 - 2
build/vendors.js


+ 84 - 0
entry.js

@@ -0,0 +1,84 @@
+module.exports = {
+  prod: {
+    //user
+    'user/index': './js/user/index.js',
+    'user/login': './js/user/login.js',
+    'user/signIn': './js/user/signIn.js',
+    'user/certify': './js/user/certify.js',
+    'user/groupCertify': './js/user/groupCertify.js',
+    //user-account
+    'user/account/index': './js/user/account/index.js',
+    'user/account/set': './js/user/account/set.js',
+    'user/account/services': './js/user/account/services.js',
+    //admin
+    'admin/index': './js/admin/index.js',
+    'admin/login': './js/admin/login.js',
+    'admin/userManage': './js/admin/userManage.js',
+    //admin-servicesManage
+    'admin/servicesManage/patent': './js/admin/servicesManage/patent.js',
+    'admin/servicesManage/copyright': './js/admin/servicesManage/copyright.js',
+    'admin/servicesManage/highTech': './js/admin/servicesManage/highTech.js',
+    vendors: ['jquery']
+  },
+  watch: {
+    'user/index': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/index.js'
+    ],
+    'user/login': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/login.js'
+    ],
+    'user/signIn': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/signIn.js'
+    ],
+    'user/certify': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/certify.js'
+    ],
+    'user/groupCertify': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/groupCertify.js'
+    ],
+    //user-account
+    'user/account/index': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/account/index.js'
+    ],
+    'user/account/set': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/account/set.js'
+    ],
+    'user/account/services': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/user/account/services.js'
+    ],
+    //admin
+    'admin/index': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/admin/index.js'
+    ],
+    'admin/login': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/admin/login.js'
+    ],
+    'admin/userManage': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/admin/userManage.js'
+    ],
+    'admin/servicesManage/patent': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/admin/servicesManage/patent.js'
+    ],
+    'admin/servicesManage/copyright': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/admin/servicesManage/copyright.js'
+    ],
+    'admin/servicesManage/highTech': ['webpack-dev-server/client?http://127.0.0.1:8000', // WebpackDevServer host and port
+      'webpack/hot/only-dev-server',
+      './js/admin/servicesManage/highTech.js'
+    ],
+    vendors: ['jquery', 'antd']
+  }
+}

+ 5 - 3
package.json

@@ -5,9 +5,11 @@
   "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
-    "build": "webpack --progress --colors",
-    "pro": "webpack --config webpack.config.pro.js --progress --colors",
-    "dev": "webpack-dev-server --port 80 --devtool eval --progress --colors --hot --content-base build"
+    "build": "webpack --progress --colors --env.deploy dev",
+    "buildtest": "webpack --progress --colors --env.deploy test",
+    "buildstage": "webpack --progress --colors --env.deploy stage",
+    "pro": "webpack --config webpack.config.pro.js --progress --colors --env.deploy prod",
+    "dev": "webpack-dev-server --port 8000 --devtool eval --progress --colors --hot --content-base build --env.deploy watch"
   },
   "repository": {
     "type": "git",

+ 98 - 129
webpack.config.js

@@ -3,136 +3,29 @@ const path = require('path');
 const ExtractTextPlugin = require("extract-text-webpack-plugin");
 const HtmlWebpackPlugin = require('html-webpack-plugin');
 const WebpackDevServer = require('webpack-dev-server');
-
+const entries = require('./entry.js');
+const version = require('./package.json').version;
+const argv = require('yargs').argv;
 
 let theme = {
     '@primary-color': '#58a3ff',
     '@link-color': '#58a3ff'
 };
+let isWatch = argv.env.deploy == 'watch';
+let isDev = isWatch || argv.env.deploy == 'dev';
 
-module.exports = {
-    entry: {
-        'user/index': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/index.js'
-        ],
-        'user/login': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/login.js'
-        ],
-        'user/signIn': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/signIn.js'
-        ],
-        'user/certify': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/certify.js'
-        ],
-        'user/groupCertify': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/groupCertify.js'
-        ],
-        //user-account
-        'user/account/index': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/account/index.js'
-        ],
-        'user/account/set': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/account/set.js'
-        ],
-        'user/account/services': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/user/account/services.js'
-        ],
-
-
-        //admin
-        'admin/index': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/admin/index.js'
-        ],
-        'admin/login': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/admin/login.js'
-        ],
-        'admin/userManage': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/admin/userManage.js'
-        ],
-        'admin/servicesManage/patent': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/admin/servicesManage/patent.js'
-        ],
-        'admin/servicesManage/copyright': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/admin/servicesManage/copyright.js'
-        ],
-        'admin/servicesManage/highTech': ['webpack-dev-server/client?http://127.0.0.1:80', // WebpackDevServer host and port
-            'webpack/hot/only-dev-server',
-            './js/admin/servicesManage/highTech.js'
-        ]
-        //vendors: ['jquery','antd']
-        //path.resolve(__dirname, './js/index.js'),
-    },
-    output: {
-        path: path.resolve(__dirname, './build'),
-        filename: '[name].js'
-    },
-    module: {
-        rules: [{
-                test: /\.jsx?$/,
-                exclude: /node_modules/,
-                use: {
-                    loader: 'babel-loader',
-                    options: {
-                        "presets": ["es2015", "react"],
-                        "plugins": [
-                            ["antd", {
-                                "style": true
-                            }]
-                        ]
-                    }
-                }
-            },
-            {
-                test: /\.less$/,
-                use: ExtractTextPlugin.extract({
-                    fallback: 'style-loader',
-                    use: [{
-                        loader: 'css-loader',
-                        options: {
-                            importLoaders: 1
-                        }
-                    }, {
-                        loader: 'less-loader',
-                        options: {
-                            modifyVars: theme
-                        }
-                    }]
-                })
-            }, {
-                test: /\.(png|jpg)$/,
-                use: [{
-                    loader: 'url-loader',
-                    options: {
-                        limit: 8192,
-                        name: '[path][name].[ext]'
-                    }
-                }]
-            }
-        ]
-    },
-    resolve: {
-        extensions: ['.js', '.jsx']
-    },
-    plugins: [
+module.exports = (function () {
+    let plugins = [
         new ExtractTextPlugin({
             filename: "[name].css",
             disable: false,
             allChunks: true
         }),
-
+        //把入口文件里面的数组打包成verdors.js
+        new webpack.optimize.CommonsChunkPlugin({
+            name: 'vendors',
+            chunks: ['vendors']
+        }),
         //user
         new HtmlWebpackPlugin({
             title: '用户首页',
@@ -177,6 +70,7 @@ module.exports = {
             template: './template/template.html',
             chunks: ['user/account/set', 'vendors']
         }),
+        //user-account-services-patent
         new HtmlWebpackPlugin({
             title: '用户中心-科技服务',
             filename: 'user/account/services.html',
@@ -184,7 +78,6 @@ module.exports = {
             chunks: ['user/account/services', 'vendors']
         }),
 
-
         //admin
         new HtmlWebpackPlugin({
             title: '管理员-首页',
@@ -222,13 +115,89 @@ module.exports = {
             filename: 'admin/servicesManage/highTech.html',
             template: './template/template.html',
             chunks: ['admin/servicesManage/highTech', 'vendors']
-        }),
-
-
-
+        })
+    ];
+    if (!isDev) {
         //这个使用uglifyJs压缩你的js代码
-        //new webpack.optimize.UglifyJsPlugin({minimize: true}),
-        //把入口文件里面的数组打包成verdors.js
-        //new webpack.optimize.CommonsChunkPlugin('vendors', 'vendors.js'),
-    ]
-};
+        plugins.unshift(new webpack.DefinePlugin({
+            "process.env": {
+                NODE_ENV: JSON.stringify("production")
+            }
+        }));
+        plugins.unshift(new webpack.optimize.UglifyJsPlugin({
+            minimize: true,
+            compress: {
+                warnings: true
+            }
+        }));
+    }
+    let staticHost = 'http://afts.hnzhiming.com';
+    switch (argv.env.deploy) {
+        case 'stage':
+            staticHost = 'http://aftts.hnzhiming.com';
+            break;
+        case 'prod':
+            staticHost = 'http://static.goafanti.com';
+            break;
+        default:
+            break;
+    }
+    staticHost = staticHost + '/' + version;
+    return {
+        entry: isWatch ? entries.watch : entries.prod,
+        output: {
+            path: path.resolve(__dirname, './build/' + version),
+            filename: '[name].js',
+            publicPath: staticHost,
+            chunkFilename: 'chunks/[name].[hash:8].js'
+        },
+        module: {
+            rules: [{
+                    test: /\.jsx?$/,
+                    exclude: /node_modules/,
+                    use: {
+                        loader: 'babel-loader',
+                        options: {
+                            "presets": ["es2015", "react"],
+                            "plugins": [
+                                ["antd", {
+                                    "style": true
+                                }]
+                            ]
+                        }
+                    }
+                },
+                {
+                    test: /\.less$/,
+                    use: ExtractTextPlugin.extract({
+                        fallback: 'style-loader',
+                        use: [{
+                            loader: 'css-loader',
+                            options: {
+                                importLoaders: 1
+                            }
+                        }, {
+                            loader: 'less-loader',
+                            options: {
+                                modifyVars: theme
+                            }
+                        }]
+                    })
+                }, {
+                    test: /\.(png|jpg)$/,
+                    use: [{
+                        loader: 'url-loader',
+                        options: {
+                            limit: 8192,
+                            name: '[path][name].[ext]'
+                        }
+                    }]
+                }
+            ]
+        },
+        resolve: {
+            extensions: ['.js', '.jsx']
+        },
+        plugins: plugins
+    };
+})();