This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a commit to branch update-antdpro
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking-ui.git
The following commit(s) were added to refs/heads/update-antdpro by this push:
new 7f8045e Add routes
7f8045e is described below
commit 7f8045ee752e520627360a1b06764ebff47957ea
Author: gaohongtao <[email protected]>
AuthorDate: Mon Feb 26 15:51:58 2018 +0800
Add routes
---
public/alert.png | Bin 0 -> 4326 bytes
public/alert.svg | 1 +
public/app.jpg | Bin 0 -> 8847 bytes
public/app.svg | 1 +
public/css/iconfont.css | 71 ++++++++++++
public/css/iconfont.eot | Bin 0 -> 5116 bytes
public/css/iconfont.js | 1 +
public/css/iconfont.svg | 57 ++++++++++
public/css/iconfont.ttf | Bin 0 -> 4948 bytes
public/css/iconfont.woff | Bin 0 -> 3216 bytes
public/data.png | Bin 0 -> 7245 bytes
public/database.svg | 1 +
public/favicon.png | Bin 6716 -> 1397 bytes
public/img/logo/sw-2.png | Bin 0 -> 1397 bytes
public/img/node/DUBBO.png | Bin 0 -> 3537 bytes
public/img/node/FeignDefaultHttp.png | Bin 0 -> 3892 bytes
public/img/node/H2.png | Bin 0 -> 2681 bytes
public/img/node/HPROSE.png | Bin 0 -> 2158 bytes
public/img/node/HTTPCLIENT.png | Bin 0 -> 10718 bytes
public/img/node/JETTY.png | Bin 0 -> 2838 bytes
public/img/node/JETTYSERVER.png | Bin 0 -> 9889 bytes
public/img/node/MONGODB.png | Bin 0 -> 4161 bytes
public/img/node/MOTAN.png | Bin 0 -> 17288 bytes
public/img/node/MYSQL.png | Bin 0 -> 4980 bytes
public/img/node/NutzHttp.png | Bin 0 -> 12509 bytes
public/img/node/NutzMvc.png | Bin 0 -> 14196 bytes
public/img/node/OKHTTP.png | Bin 0 -> 4070 bytes
public/img/node/Oracle.png | Bin 0 -> 4312 bytes
public/img/node/REDIS.png | Bin 0 -> 5178 bytes
public/img/node/RESIN.png | Bin 0 -> 15092 bytes
public/img/node/SPRINGMVC.png | Bin 0 -> 11226 bytes
public/img/node/STRUTS2.png | Bin 0 -> 11643 bytes
public/img/node/UNDEFINED.png | Bin 0 -> 2918 bytes
public/img/node/USER.png | Bin 0 -> 2444 bytes
public/img/node/tomcat.png | Bin 0 -> 4302 bytes
public/redis.svg | 1 +
public/service.svg | 1 +
src/common/menu.js | 128 ++++------------------
src/common/router.js | 94 +++-------------
src/components/Charts/Area/index.js | 2 +-
src/components/Charts/{Area => Line}/index.js | 29 +++--
src/components/Charts/{Area => StackBar}/index.js | 37 ++-----
src/components/Charts/equal.js | 17 +++
src/components/Charts/index.js | 6 +
src/components/Page/Ranking/index.js | 40 +++----
src/components/Page/index.js | 2 +-
src/components/SiderMenu/SiderMenu.js | 2 +-
src/components/Topology/index.js | 2 +-
src/index.ejs | 3 +-
src/layouts/BasicLayout.js | 2 +-
src/routes/Dashboard/Dashboard.js | 2 +-
src/routes/Server/Server.js | 2 +-
src/routes/Service/Service.js | 2 +-
53 files changed, 240 insertions(+), 264 deletions(-)
diff --git a/public/alert.png b/public/alert.png
new file mode 100644
index 0000000..e24e202
Binary files /dev/null and b/public/alert.png differ
diff --git a/public/alert.svg b/public/alert.svg
new file mode 100644
index 0000000..fc9270b
--- /dev/null
+++ b/public/alert.svg
@@ -0,0 +1 @@
+<?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 class="icon"
width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg"><path d="M611.702 44.963l263.203
149.544c60.979 35.06 98.35 99.414 98.154 168.892v299.056c0.037 69.658-37.691
134.044-98.987 168.902l-262.37 149.36c-61.333 34.828-136.864 34.828-198.176
0l-263.61-149.55c-61.285-34.859-99.008-99.246-98 [...]
\ No newline at end of file
diff --git a/public/app.jpg b/public/app.jpg
new file mode 100644
index 0000000..8d8166d
Binary files /dev/null and b/public/app.jpg differ
diff --git a/public/app.svg b/public/app.svg
new file mode 100644
index 0000000..4116c21
--- /dev/null
+++ b/public/app.svg
@@ -0,0 +1 @@
+<?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 class="icon"
width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg"><path d="M357.885 49.289h285.276c173.87 0
316.906 143.086 316.906 317.854v285.276c0 173.831-143.086 316.925-316.906
316.925h-285.276c-174.749 0-317.854-143.086-317.854-316.925v-285.276c0-174.749
143.086-317.854 317.854-317.854z" fill= [...]
\ No newline at end of file
diff --git a/public/css/iconfont.css b/public/css/iconfont.css
new file mode 100644
index 0000000..2ca477a
--- /dev/null
+++ b/public/css/iconfont.css
@@ -0,0 +1,71 @@
+
+@font-face {font-family: "iconfont";
+ src: url('iconfont.eot?t=1516507130714'); /* IE9*/
+ src: url('iconfont.eot?t=1516507130714#iefix') format('embedded-opentype'),
/* IE6-IE8 */
+
url('data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAyQAAsAAAAAE1QAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFZW7k3TY21hcAAAAYAAAACjAAACGEGg6XVnbHlmAAACJAAAB/cAAAwE8ttzW2hlYWQAAAocAAAALwAAADYQM6XyaGhlYQAACkwAAAAcAAAAJAfeA4tobXR4AAAKaAAAABQAAAAoJ+kAAGxvY2EAAAp8AAAAFgAAABYO5ApgbWF4cAAACpQAAAAeAAAAIAEkAS1uYW1lAAAKtAAAAUUAAAJtPlT+fXBvc3QAAAv8AAAAlAAAALLrxH1JeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk/sc4gYG
[...]
+ url('iconfont.ttf?t=1516507130714') format('truetype'), /* chrome, firefox,
opera, Safari, Android, iOS 4.2+*/
+ url('iconfont.svg?t=1516507130714#iconfont') format('svg'); /* iOS 4.1- */
+}
+
+.iconfont {
+ display: inline-block;
+ font-style: normal;
+ vertical-align: baseline;
+ text-align: center;
+ text-transform: none;
+ line-height: 1;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ margin-right: 10px;
+}
+
+.ant-menu-item .iconfont,
+.ant-menu-submenu-title .iconfont {
+ min-width: 14px;
+ margin-right: 10px;
+ transition: font-size 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), margin 0.3s
cubic-bezier(0.645, 0.045, 0.355, 1);
+}
+
+.ant-menu-item .iconfont + span,
+.ant-menu-submenu-title .iconfont + span {
+ transition: opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1), width 0.3s
cubic-bezier(0.645, 0.045, 0.355, 1);
+ opacity: 1;
+}
+
+.ant-menu-inline-collapsed > .ant-menu-item .iconfont,
+.ant-menu-inline-collapsed > .ant-menu-item-group > .ant-menu-item-group-list
> .ant-menu-item .iconfont,
+.ant-menu-inline-collapsed > .ant-menu-submenu > .ant-menu-submenu-title
.iconfont {
+ font-size: 16px;
+ line-height: 40px;
+ margin: 0;
+}
+
+.ant-menu-inline-collapsed > .ant-menu-item .iconfont + span,
+.ant-menu-inline-collapsed > .ant-menu-item-group > .ant-menu-item-group-list
> .ant-menu-item .iconfont + span,
+.ant-menu-inline-collapsed > .ant-menu-submenu > .ant-menu-submenu-title
.iconfont + span {
+ max-width: 0;
+ display: inline-block;
+ opacity: 0;
+}
+
+.iconfont:before {
+ display: block;
+ font-family: "iconfont" !important;
+}
+
+.icon-server:before { content: "\ebe2"; }
+
+.icon-network:before { content: "\e64d"; }
+
+.icon-icon-traces-search:before { content: "\e626"; }
+
+.icon-APPyemiantubiaoSVGxinxileixing:before { content: "\e612"; }
+
+.icon-database1:before { content: "\e601"; }
+
+.icon-ALERT:before { content: "\e954"; }
+
+.icon-Corebusinessnetwork-copy:before { content: "\e600"; }
+
+.icon-soft_A_Redis:before { content: "\e773"; }
diff --git a/public/css/iconfont.eot b/public/css/iconfont.eot
new file mode 100644
index 0000000..fe2d08f
Binary files /dev/null and b/public/css/iconfont.eot differ
diff --git a/public/css/iconfont.js b/public/css/iconfont.js
new file mode 100644
index 0000000..a2c1a6c
--- /dev/null
+++ b/public/css/iconfont.js
@@ -0,0 +1 @@
+(function(window){var svgSprite='<svg><symbol id="icon-server" viewBox="0 0
1024 1024"><path d="M73.142857 804.571429l585.142857 0 0-73.142857-585.142857 0
0 73.142857zM73.142857 512l585.142857 0 0-73.142857-585.142857 0 0
73.142857zM969.142857
768q0-22.820571-16.018286-38.838857t-38.838857-16.018286-38.838857
16.018286-16.018286 38.838857 16.018286 38.838857 38.838857 16.018286
38.838857-16.018286 16.018286-38.838857zM73.142857 219.428571l585.142857 0
0-73.142857-585.142857 0 0 73.14285 [...]
\ No newline at end of file
diff --git a/public/css/iconfont.svg b/public/css/iconfont.svg
new file mode 100644
index 0000000..8147aa1
--- /dev/null
+++ b/public/css/iconfont.svg
@@ -0,0 +1,57 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
+<!--
+2013-9-30: Created.
+-->
+<svg>
+<metadata>
+Created by iconfont
+</metadata>
+<defs>
+
+<font id="iconfont" horiz-adv-x="1024" >
+ <font-face
+ font-family="iconfont"
+ font-weight="500"
+ font-stretch="normal"
+ units-per-em="1024"
+ ascent="896"
+ descent="-128"
+ />
+ <missing-glyph />
+
+ <glyph glyph-name="x" unicode="x" horiz-adv-x="1001"
+d="M281 543q-27 -1 -53 -1h-83q-18 0 -36.5 -6t-32.5 -18.5t-23 -32t-9
-45.5v-76h912v41q0 16 -0.5 30t-0.5 18q0 13 -5 29t-17 29.5t-31.5 22.5t-49.5
9h-133v-97h-438v97zM955 310v-52q0 -23 0.5 -52t0.5 -58t-10.5 -47.5t-26 -30t-33
-16t-31.5 -4.5q-14 -1 -29.5 -0.5
+t-29.5 0.5h-32l-45 128h-439l-44 -128h-29h-34q-20 0 -45 1q-25 0 -41 9.5t-25.5
23t-13.5 29.5t-4 30v167h911zM163 247q-12 0 -21 -8.5t-9 -21.5t9 -21.5t21 -8.5q13
0 22 8.5t9 21.5t-9 21.5t-22 8.5zM316 123q-8 -26 -14 -48q-5 -19 -10.5 -37t-7.5
-25t-3 -15t1 -14.5
+t9.5 -10.5t21.5 -4h37h67h81h80h64h36q23 0 34 12t2 38q-5 13 -9.5 30.5t-9.5
34.5q-5 19 -11 39h-368zM336 498v228q0 11 2.5 23t10 21.5t20.5 15.5t34 6h188q31 0
51.5 -14.5t20.5 -52.5v-227h-327z" />
+
+
+
+ <glyph glyph-name="server" unicode="" d="M73.142857
91.428571l585.142857 0 0 73.142857-585.142857 0 0-73.142857zM73.142857
384l585.142857 0 0 73.142857-585.142857 0 0-73.142857zM969.142857 128q0
22.820571-16.018286 38.838857t-38.838857
16.018286-38.838857-16.018286-16.018286-38.838857 16.018286-38.838857
38.838857-16.018286 38.838857 16.018286 16.018286 38.838857zM73.142857
676.571429l585.142857 0 0 73.142857-585.142857 0 0-73.142857zM969.142857
420.571429q0 22.820571-16.0182 [...]
+
+
+ <glyph glyph-name="network" unicode="" d="M912.290909
896c-61.607564 0-111.709091-50.101527-111.709091-111.709091 0-19.269818
4.896582-37.403927 13.5168-53.248l-182.998109-182.998109a147.884218 147.884218
0 0 1-182.365091 0.018618l-142.782836 142.782837A73.485964 73.485964 0 0 1
316.509091 728.436364c0 41.071709-33.401018 74.472727-74.472727
74.472727S167.563636 769.508073 167.563636 728.436364s33.401018-74.472727
74.472728-74.472728c13.777455 0 26.512291 4.002909 37.590109 1 [...]
+
+
+ <glyph glyph-name="icon-traces-search" unicode="" d="M738.312
727.526H219.595c-47.744 0-86.458-38.798-86.458-86.665v-433.359c0-47.856
38.714-86.661 86.458-86.661h352.193c-46.896 34.415-77.48 90.879-77.48 154.702 0
104.829 82.534 189.823 184.36 189.823 59.493 0 112.39-29.023
146.094-74.068V640.861c0 47.867-38.705 86.665-86.45 86.665zM357.951
396.561H229.87c-19.283 0-34.914 15.007-34.914 33.518 0 18.504 15.631 33.503
34.914 33.503h128.081c19.284 0 34.909-15.003 34.909-33.503 0- [...]
+
+
+ <glyph glyph-name="APPyemiantubiaoSVGxinxileixing" unicode=""
d="M357.885 846.711h285.276c173.87 0 316.906-143.086
316.906-317.854v-285.276c0-173.831-143.086-316.925-316.906-316.925h-285.276c-174.749
0-317.854 143.086-317.854 316.925v285.276c0 174.749 143.086 317.854 317.854
317.854zM708.284 144.029h-138.54c-18.985 0-35.317 15.371-35.317 34.429v138.54c0
18.985 16.279 35.317 35.317 35.317h138.54c18.985 0 34.429-16.326
34.429-35.317v-138.54c0-18.985-15.381-34.429-34.429-34.429z [...]
+
+
+ <glyph glyph-name="database1" unicode="" d="M896.483
704.532v-64.081c0-70.585-172.214-128.161-384.485-128.161-212.267 0-384.484
57.577-384.484 128.161v64.081c0 70.584 172.216 128.161 384.484 128.161 212.271
0 384.485-57.577 384.485-128.161zM896.483
533.319v-85.109c0-70.584-172.214-128.161-384.485-128.161-212.267 0-384.484
57.577-384.484 128.161v85.109c82.608-58.074 233.795-85.109 384.484-85.109
150.691 0 301.878 27.036 384.485 85.109zM896.483
341.077v-85.11c0-70.585-172.214-1 [...]
+
+
+ <glyph glyph-name="ALERT" unicode="" d="M611.702
851.037l263.203-149.544c60.979-35.06 98.35-99.414
98.154-168.892v-299.056c0.037-69.658-37.691-134.044-98.987-168.902l-262.37-149.36c-61.333-34.828-136.864-34.828-198.176
0l-263.61 149.55c-61.285 34.859-99.008 99.246-98.977 168.915V532.601c-0.032
69.657 37.691 134.033 98.977 168.892l263.61 149.544c61.312 34.834 136.843
34.834 198.176 0M799.555 370.858h-75.163v12.625c-0.063 7.043-0.449 14.072-1.224
21.083h76.387c9.521 0 17.24-7.5 [...]
+
+
+ <glyph glyph-name="Corebusinessnetwork-copy" unicode=""
d="M151.3048309167421 25.98617983100155c199.20612239587413-199.20612239587422
522.1842157706417-199.20612239587433 721.3924594868594 0.002121320343348998
199.2068295026554 199.20682950265532 199.20682950265544 522.1849228774227
0.0007071067813058107 721.391045273297C673.4897537941649 946.5875901408598
350.5109533126164 946.5882972476411 151.30412380996103
747.3814677449857-47.90341279947552 548.1739311355491-47.903412799 [...]
+
+
+ <glyph glyph-name="soft_A_Redis" unicode="" d="M583.66976
610.83136l-229.83168-23.296a2.19136 2.19136 0 0 1-1.84832-1.78176 2.14016
2.14016 0 0 1 1.28-2.27328l179.12832-73.07776c0.28672-0.07168 0.49664-0.14336
0.77824-0.14336 0.77312 0 1.4848 0.42496 1.83808 1.13664l50.65216
96.45056c0.34816 0.63488 0.34816 1.48992-0.08192 2.05312a2.08896 2.08896 0 0
1-1.91488 0.93184zM880.75776 676.59776l-139.99104 56.3968a1.98144 1.98144 0 0
1-1.56672 0l-124.14464-49.28512a2.01216 2.01216 0 [...]
+
+
+
+
+ </font>
+</defs></svg>
diff --git a/public/css/iconfont.ttf b/public/css/iconfont.ttf
new file mode 100644
index 0000000..d9f87fa
Binary files /dev/null and b/public/css/iconfont.ttf differ
diff --git a/public/css/iconfont.woff b/public/css/iconfont.woff
new file mode 100644
index 0000000..a4c5201
Binary files /dev/null and b/public/css/iconfont.woff differ
diff --git a/public/data.png b/public/data.png
new file mode 100644
index 0000000..7c15d62
Binary files /dev/null and b/public/data.png differ
diff --git a/public/database.svg b/public/database.svg
new file mode 100644
index 0000000..7fc1526
--- /dev/null
+++ b/public/database.svg
@@ -0,0 +1 @@
+<?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 class="icon"
width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg"><path d="M896.483256 191.467753v64.081481c0
70.584592-172.214247 128.160915-384.484791 128.160915-212.267475
0-384.483768-57.577347-384.483768-128.160915v-64.081481c0-70.583568
172.216293-128.160915 384.483768-128.160915 212.270545 0 [...]
\ No newline at end of file
diff --git a/public/favicon.png b/public/favicon.png
index cc27768..7606a35 100644
Binary files a/public/favicon.png and b/public/favicon.png differ
diff --git a/public/img/logo/sw-2.png b/public/img/logo/sw-2.png
new file mode 100644
index 0000000..7606a35
Binary files /dev/null and b/public/img/logo/sw-2.png differ
diff --git a/public/img/node/DUBBO.png b/public/img/node/DUBBO.png
new file mode 100644
index 0000000..c388222
Binary files /dev/null and b/public/img/node/DUBBO.png differ
diff --git a/public/img/node/FeignDefaultHttp.png
b/public/img/node/FeignDefaultHttp.png
new file mode 100644
index 0000000..b727c0f
Binary files /dev/null and b/public/img/node/FeignDefaultHttp.png differ
diff --git a/public/img/node/H2.png b/public/img/node/H2.png
new file mode 100644
index 0000000..29e78b1
Binary files /dev/null and b/public/img/node/H2.png differ
diff --git a/public/img/node/HPROSE.png b/public/img/node/HPROSE.png
new file mode 100644
index 0000000..a90bd98
Binary files /dev/null and b/public/img/node/HPROSE.png differ
diff --git a/public/img/node/HTTPCLIENT.png b/public/img/node/HTTPCLIENT.png
new file mode 100644
index 0000000..00f158f
Binary files /dev/null and b/public/img/node/HTTPCLIENT.png differ
diff --git a/public/img/node/JETTY.png b/public/img/node/JETTY.png
new file mode 100644
index 0000000..85d8167
Binary files /dev/null and b/public/img/node/JETTY.png differ
diff --git a/public/img/node/JETTYSERVER.png b/public/img/node/JETTYSERVER.png
new file mode 100644
index 0000000..31cafa8
Binary files /dev/null and b/public/img/node/JETTYSERVER.png differ
diff --git a/public/img/node/MONGODB.png b/public/img/node/MONGODB.png
new file mode 100644
index 0000000..93d9a01
Binary files /dev/null and b/public/img/node/MONGODB.png differ
diff --git a/public/img/node/MOTAN.png b/public/img/node/MOTAN.png
new file mode 100644
index 0000000..ff57bf9
Binary files /dev/null and b/public/img/node/MOTAN.png differ
diff --git a/public/img/node/MYSQL.png b/public/img/node/MYSQL.png
new file mode 100644
index 0000000..34530b4
Binary files /dev/null and b/public/img/node/MYSQL.png differ
diff --git a/public/img/node/NutzHttp.png b/public/img/node/NutzHttp.png
new file mode 100644
index 0000000..506cfad
Binary files /dev/null and b/public/img/node/NutzHttp.png differ
diff --git a/public/img/node/NutzMvc.png b/public/img/node/NutzMvc.png
new file mode 100644
index 0000000..dce0725
Binary files /dev/null and b/public/img/node/NutzMvc.png differ
diff --git a/public/img/node/OKHTTP.png b/public/img/node/OKHTTP.png
new file mode 100644
index 0000000..c4c19a9
Binary files /dev/null and b/public/img/node/OKHTTP.png differ
diff --git a/public/img/node/Oracle.png b/public/img/node/Oracle.png
new file mode 100644
index 0000000..7b1cd56
Binary files /dev/null and b/public/img/node/Oracle.png differ
diff --git a/public/img/node/REDIS.png b/public/img/node/REDIS.png
new file mode 100644
index 0000000..5c6a5a4
Binary files /dev/null and b/public/img/node/REDIS.png differ
diff --git a/public/img/node/RESIN.png b/public/img/node/RESIN.png
new file mode 100644
index 0000000..aa0eed3
Binary files /dev/null and b/public/img/node/RESIN.png differ
diff --git a/public/img/node/SPRINGMVC.png b/public/img/node/SPRINGMVC.png
new file mode 100644
index 0000000..626f832
Binary files /dev/null and b/public/img/node/SPRINGMVC.png differ
diff --git a/public/img/node/STRUTS2.png b/public/img/node/STRUTS2.png
new file mode 100644
index 0000000..5f1d499
Binary files /dev/null and b/public/img/node/STRUTS2.png differ
diff --git a/public/img/node/UNDEFINED.png b/public/img/node/UNDEFINED.png
new file mode 100644
index 0000000..3e1d681
Binary files /dev/null and b/public/img/node/UNDEFINED.png differ
diff --git a/public/img/node/USER.png b/public/img/node/USER.png
new file mode 100644
index 0000000..a195d8f
Binary files /dev/null and b/public/img/node/USER.png differ
diff --git a/public/img/node/tomcat.png b/public/img/node/tomcat.png
new file mode 100644
index 0000000..5c4a1a3
Binary files /dev/null and b/public/img/node/tomcat.png differ
diff --git a/public/redis.svg b/public/redis.svg
new file mode 100644
index 0000000..e634317
--- /dev/null
+++ b/public/redis.svg
@@ -0,0 +1 @@
+<?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 class="icon"
width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg"><path d="M583.66976 285.16864l-229.83168
23.296a2.19136 2.19136 0 0 0-1.84832 1.78176 2.14016 2.14016 0 0 0 1.28
2.27328l179.12832 73.07776c0.28672 0.07168 0.49664 0.14336 0.77824 0.14336
0.77312 0 1.4848-0.42496 1.83808-1.13664l50.65 [...]
\ No newline at end of file
diff --git a/public/service.svg b/public/service.svg
new file mode 100644
index 0000000..8d2daf7
--- /dev/null
+++ b/public/service.svg
@@ -0,0 +1 @@
+<?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 class="icon"
width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg"><path d="M151.3048309167421
870.0138201689984c199.20612239587413 199.20612239587422 522.1842157706417
199.20612239587433 721.3924594868594-0.002121320343348998
199.2068295026554-199.20682950265532 199.20682950265544-522.1849228774227 [...]
\ No newline at end of file
diff --git a/src/common/menu.js b/src/common/menu.js
index 75f47dc..6df5e05 100644
--- a/src/common/menu.js
+++ b/src/common/menu.js
@@ -1,123 +1,33 @@
import { isUrl } from '../utils/utils';
const menuData = [{
- name: 'dashboard',
+ name: 'Dashboard',
icon: 'dashboard',
path: 'dashboard',
- children: [{
- name: '分析页',
- path: 'analysis',
- }, {
- name: '监控页',
- path: 'monitor',
- }, {
- name: '工作台',
- path: 'workplace',
- // hideInMenu: true,
- }],
}, {
- name: '表单页',
- icon: 'form',
- path: 'form',
- children: [{
- name: '基础表单',
- path: 'basic-form',
- }, {
- name: '分步表单',
- path: 'step-form',
- }, {
- name: '高级表单',
- authority: 'admin',
- path: 'advanced-form',
- }],
+ name: 'Topology',
+ icon: 'iconfont icon-network',
+ path: 'topology',
}, {
- name: '列表页',
- icon: 'table',
- path: 'list',
- children: [{
- name: '查询表格',
- path: 'table-list',
- }, {
- name: '标准列表',
- path: 'basic-list',
- }, {
- name: '卡片列表',
- path: 'card-list',
- }, {
- name: '搜索列表',
- path: 'search',
- children: [{
- name: '搜索列表(文章)',
- path: 'articles',
- }, {
- name: '搜索列表(项目)',
- path: 'projects',
- }, {
- name: '搜索列表(应用)',
- path: 'applications',
- }],
- }],
+ name: 'Application',
+ icon: 'appstore',
+ path: 'application',
}, {
- name: '详情页',
- icon: 'profile',
- path: 'profile',
- children: [{
- name: '基础详情页',
- path: 'basic',
- }, {
- name: '高级详情页',
- path: 'advanced',
- authority: 'admin',
- }],
+ name: 'Server',
+ icon: 'iconfont icon-server',
+ path: 'server',
}, {
- name: '结果页',
- icon: 'check-circle-o',
- path: 'result',
- children: [{
- name: '成功',
- path: 'success',
- }, {
- name: '失败',
- path: 'fail',
- }],
+ name: 'Service',
+ icon: 'api',
+ path: 'service',
}, {
- name: '异常页',
- icon: 'warning',
- path: 'exception',
- children: [{
- name: '403',
- path: '403',
- }, {
- name: '404',
- path: '404',
- }, {
- name: '500',
- path: '500',
- }, {
- name: '触发异常',
- path: 'trigger',
- hideInMenu: true,
- }],
+ name: 'Trace',
+ icon: 'iconfont icon-icon-traces-search',
+ path: 'trace',
}, {
- name: '账户',
- icon: 'user',
- path: 'user',
- authority: 'guest',
- children: [{
- name: '登录',
- path: 'login',
- }, {
- name: '注册',
- path: 'register',
- }, {
- name: '注册结果',
- path: 'register-result',
- }],
-}, {
- name: '使用文档',
- icon: 'book',
- path: 'http://pro.ant.design/docs/getting-started',
- target: '_blank',
+ name: 'Alarm',
+ icon: 'iconfont icon-ALERT',
+ path: 'alarm',
}];
function formatter(data, parentPath = '', parentAuthority) {
diff --git a/src/common/router.js b/src/common/router.js
index 5df2477..de25002 100644
--- a/src/common/router.js
+++ b/src/common/router.js
@@ -73,96 +73,30 @@ export const getRouterData = (app) => {
'/': {
component: dynamicWrapper(app, ['user', 'login'], () =>
import('../layouts/BasicLayout')),
},
- '/dashboard/analysis': {
- component: dynamicWrapper(app, ['chart'], () =>
import('../routes/Dashboard/Analysis')),
+ '/dashboard': {
+ component: dynamicWrapper(app, ['dashboard'], () =>
import('../routes/Dashboard/Dashboard')),
},
- '/dashboard/monitor': {
- component: dynamicWrapper(app, ['monitor'], () =>
import('../routes/Dashboard/Monitor')),
+ '/topology': {
+ component: dynamicWrapper(app, ['topology'], () =>
import('../routes/Topology/Topology')),
},
- '/dashboard/workplace': {
- component: dynamicWrapper(app, ['project', 'activities', 'chart'], () =>
import('../routes/Dashboard/Workplace')),
- // hideInBreadcrumb: true,
- // name: '工作台',
- // authority: 'admin',
+ '/application': {
+ component: dynamicWrapper(app, ['application'], () =>
import('../routes/Application/Application')),
},
- '/form/basic-form': {
- component: dynamicWrapper(app, ['form'], () =>
import('../routes/Forms/BasicForm')),
+ '/server': {
+ component: dynamicWrapper(app, ['server'], () =>
import('../routes/Server/Server')),
},
- '/form/step-form': {
- component: dynamicWrapper(app, ['form'], () =>
import('../routes/Forms/StepForm')),
+ '/service': {
+ component: dynamicWrapper(app, ['service'], () =>
import('../routes/Service/Service')),
},
- '/form/step-form/info': {
- component: dynamicWrapper(app, ['form'], () =>
import('../routes/Forms/StepForm/Step1')),
+ '/trace': {
+ component: dynamicWrapper(app, ['trace'], () =>
import('../routes/Trace/Trace')),
},
- '/form/step-form/confirm': {
- component: dynamicWrapper(app, ['form'], () =>
import('../routes/Forms/StepForm/Step2')),
- },
- '/form/step-form/result': {
- component: dynamicWrapper(app, ['form'], () =>
import('../routes/Forms/StepForm/Step3')),
- },
- '/form/advanced-form': {
- component: dynamicWrapper(app, ['form'], () =>
import('../routes/Forms/AdvancedForm')),
- },
- '/list/table-list': {
- component: dynamicWrapper(app, ['rule'], () =>
import('../routes/List/TableList')),
- },
- '/list/basic-list': {
- component: dynamicWrapper(app, ['list'], () =>
import('../routes/List/BasicList')),
- },
- '/list/card-list': {
- component: dynamicWrapper(app, ['list'], () =>
import('../routes/List/CardList')),
- },
- '/list/search': {
- component: dynamicWrapper(app, ['list'], () =>
import('../routes/List/List')),
- },
- '/list/search/projects': {
- component: dynamicWrapper(app, ['list'], () =>
import('../routes/List/Projects')),
- },
- '/list/search/applications': {
- component: dynamicWrapper(app, ['list'], () =>
import('../routes/List/Applications')),
- },
- '/list/search/articles': {
- component: dynamicWrapper(app, ['list'], () =>
import('../routes/List/Articles')),
- },
- '/profile/basic': {
- component: dynamicWrapper(app, ['profile'], () =>
import('../routes/Profile/BasicProfile')),
- },
- '/profile/advanced': {
- component: dynamicWrapper(app, ['profile'], () =>
import('../routes/Profile/AdvancedProfile')),
- },
- '/result/success': {
- component: dynamicWrapper(app, [], () =>
import('../routes/Result/Success')),
- },
- '/result/fail': {
- component: dynamicWrapper(app, [], () =>
import('../routes/Result/Error')),
- },
- '/exception/403': {
- component: dynamicWrapper(app, [], () =>
import('../routes/Exception/403')),
- },
- '/exception/404': {
- component: dynamicWrapper(app, [], () =>
import('../routes/Exception/404')),
- },
- '/exception/500': {
- component: dynamicWrapper(app, [], () =>
import('../routes/Exception/500')),
- },
- '/exception/trigger': {
- component: dynamicWrapper(app, ['error'], () =>
import('../routes/Exception/triggerException')),
+ '/alarm': {
+ component: dynamicWrapper(app, ['alarm'], () =>
import('../routes/Alarm/Alarm')),
},
'/user': {
component: dynamicWrapper(app, [], () =>
import('../layouts/UserLayout')),
},
- '/user/login': {
- component: dynamicWrapper(app, ['login'], () =>
import('../routes/User/Login')),
- },
- '/user/register': {
- component: dynamicWrapper(app, ['register'], () =>
import('../routes/User/Register')),
- },
- '/user/register-result': {
- component: dynamicWrapper(app, [], () =>
import('../routes/User/RegisterResult')),
- },
- // '/user/:id': {
- // component: dynamicWrapper(app, [], () =>
import('../routes/User/SomeComponent')),
- // },
};
// Get name from ./menu.js or just set it in the router data.
const menuData = getFlatMenuData(getMenuData());
diff --git a/src/components/Charts/Area/index.js
b/src/components/Charts/Area/index.js
index a15f5d6..b87fd9f 100644
--- a/src/components/Charts/Area/index.js
+++ b/src/components/Charts/Area/index.js
@@ -1,5 +1,5 @@
import React, { PureComponent } from 'react';
-import G2 from 'g2';
+import G2 from '@antv/g2';
import Debounce from 'lodash-decorators/debounce';
import Bind from 'lodash-decorators/bind';
import equal from '../equal';
diff --git a/src/components/Charts/Area/index.js
b/src/components/Charts/Line/index.js
similarity index 78%
copy from src/components/Charts/Area/index.js
copy to src/components/Charts/Line/index.js
index a15f5d6..483cb2b 100644
--- a/src/components/Charts/Area/index.js
+++ b/src/components/Charts/Line/index.js
@@ -1,13 +1,13 @@
import React, { PureComponent } from 'react';
-import G2 from 'g2';
+import G2 from '@antv/g2';
import Debounce from 'lodash-decorators/debounce';
import Bind from 'lodash-decorators/bind';
import equal from '../equal';
import styles from '../index.less';
-class Area extends PureComponent {
+class Line extends PureComponent {
static defaultProps = {
- limitColor: 'rgb(255, 144, 24)',
+ borderColor: 'rgb(24, 144, 255)',
color: 'rgb(24, 144, 255)',
};
componentDidMount() {
@@ -50,7 +50,7 @@ class Area extends PureComponent {
height = 0,
fit = true,
margin = [32, 60, 32, 60],
- limitColor,
+ borderColor,
color,
} = this.props;
@@ -90,7 +90,7 @@ class Area extends PureComponent {
const dataConfig = {
x: {
type: 'cat',
- tickCount: 3,
+ tickCount: 5,
range: [0, 1],
},
y: {
@@ -98,18 +98,15 @@ class Area extends PureComponent {
},
};
const view = chart.createView();
- const offset = Math.floor(data.length / 2);
- const xData = data.slice(0, offset);
- const yData = data.slice(offset).map((v, i) => ({ ...v, y: v.y -
xData[i].y }));
- view.source(yData.concat(xData), dataConfig);
- view.areaStack().position('x*y').color('type', [limitColor,
color]).shape('smooth')
- .style({ fillOpacity: 0.2 });
- view.tooltip(false);
- view.axis(false);
+ view.source(data, dataConfig);
+ view.line().position('x*y').color(borderColor).shape('smooth')
+ .size(2);
const view2 = chart.createView();
view2.source(data, dataConfig);
- view2.line().position('x*y').color('type', [color,
limitColor]).shape('smooth')
- .size(2);
+ view2.area().position('x*y').color(color).shape('smooth')
+ .style({ fillOpacity: 0.2 });
+ view2.tooltip(false);
+ view2.axis(false);
chart.render();
this.chart = chart;
@@ -129,4 +126,4 @@ class Area extends PureComponent {
}
}
-export default Area;
+export default Line;
diff --git a/src/components/Charts/Area/index.js
b/src/components/Charts/StackBar/index.js
similarity index 68%
copy from src/components/Charts/Area/index.js
copy to src/components/Charts/StackBar/index.js
index a15f5d6..132bc3e 100644
--- a/src/components/Charts/Area/index.js
+++ b/src/components/Charts/StackBar/index.js
@@ -1,5 +1,5 @@
import React, { PureComponent } from 'react';
-import G2 from 'g2';
+import G2 from '@antv/g2';
import Debounce from 'lodash-decorators/debounce';
import Bind from 'lodash-decorators/bind';
import equal from '../equal';
@@ -7,8 +7,8 @@ import styles from '../index.less';
class Area extends PureComponent {
static defaultProps = {
- limitColor: 'rgb(255, 144, 24)',
- color: 'rgb(24, 144, 255)',
+ limitColor: 'rgb(255, 181, 102)',
+ color: 'rgb(102, 181, 255)',
};
componentDidMount() {
this.renderChart(this.props.data);
@@ -77,39 +77,16 @@ class Area extends PureComponent {
chart.axis('y', {
title: false,
});
- chart.tooltip({
- crosshairs: {
- type: 'line',
- },
- title: null,
- map: {
- name: 'x',
- value: 'y',
- },
- });
const dataConfig = {
x: {
type: 'cat',
- tickCount: 3,
- range: [0, 1],
- },
- y: {
- min: 0,
+ tickCount: 5,
},
};
const view = chart.createView();
- const offset = Math.floor(data.length / 2);
- const xData = data.slice(0, offset);
- const yData = data.slice(offset).map((v, i) => ({ ...v, y: v.y -
xData[i].y }));
- view.source(yData.concat(xData), dataConfig);
- view.areaStack().position('x*y').color('type', [limitColor,
color]).shape('smooth')
- .style({ fillOpacity: 0.2 });
- view.tooltip(false);
- view.axis(false);
- const view2 = chart.createView();
- view2.source(data, dataConfig);
- view2.line().position('x*y').color('type', [color,
limitColor]).shape('smooth')
- .size(2);
+ view.source(data, dataConfig);
+ view.intervalStack().position('x*y').color('type', [limitColor, color])
+ .style({ fillOpacity: 1 });
chart.render();
this.chart = chart;
diff --git a/src/components/Charts/equal.js b/src/components/Charts/equal.js
new file mode 100644
index 0000000..ff3a4c7
--- /dev/null
+++ b/src/components/Charts/equal.js
@@ -0,0 +1,17 @@
+/* eslint eqeqeq: 0 */
+
+function equal(old, target) {
+ let r = true;
+ for (const prop in old) {
+ if (typeof old[prop] === 'function' && typeof target[prop] === 'function')
{
+ if (old[prop].toString() != target[prop].toString()) {
+ r = false;
+ }
+ } else if (old[prop] != target[prop]) {
+ r = false;
+ }
+ }
+ return r;
+}
+
+export default equal;
diff --git a/src/components/Charts/index.js b/src/components/Charts/index.js
index 0fbf014..fed8db9 100644
--- a/src/components/Charts/index.js
+++ b/src/components/Charts/index.js
@@ -1,10 +1,12 @@
import numeral from 'numeral';
import './g2';
import ChartCard from './ChartCard';
+import Area from './Area';
import Bar from './Bar';
import Pie from './Pie';
import Radar from './Radar';
import Gauge from './Gauge';
+import Line from './Line';
import MiniArea from './MiniArea';
import MiniBar from './MiniBar';
import MiniProgress from './MiniProgress';
@@ -12,6 +14,7 @@ import Field from './Field';
import WaterWave from './WaterWave';
import TagCloud from './TagCloud';
import TimelineChart from './TimelineChart';
+import StackBar from './StackBar';
const yuan = val => `¥ ${numeral(val).format('0,0')}`;
@@ -29,4 +32,7 @@ export {
WaterWave,
TagCloud,
TimelineChart,
+ Line,
+ Area,
+ StackBar,
};
diff --git a/src/components/Page/Ranking/index.js
b/src/components/Page/Ranking/index.js
index e4400d3..caa8e88 100644
--- a/src/components/Page/Ranking/index.js
+++ b/src/components/Page/Ranking/index.js
@@ -2,28 +2,28 @@ import React, { PureComponent } from 'react';
import { List, Avatar } from 'antd';
export default class Ranking extends PureComponent {
-
render() {
let index = 0;
const { data, title, content, unit } = this.props;
- return (<List
- size="small"
- itemLayout="horizontal"
- dataSource={data}
- renderItem={item => (
- <List.Item>
- <List.Item.Meta
- avatar={
- <Avatar
- style={{ color: '#ff3333', backgroundColor: '#ffb84d' }}
- >
- {(() => { index += 1; return index; })()}
- </Avatar>}
- title={item[title]}
- description={`${item[content]} ${unit}`}
- />
- </List.Item>
- )}
- />);
+ return (
+ <List
+ size="small"
+ itemLayout="horizontal"
+ dataSource={data}
+ renderItem={item => (
+ <List.Item>
+ <List.Item.Meta
+ avatar={
+ <Avatar
+ style={{ color: '#ff3333', backgroundColor: '#ffb84d' }}
+ >
+ {(() => { index += 1; return index; })()}
+ </Avatar>}
+ title={item[title]}
+ description={`${item[content]} ${unit}`}
+ />
+ </List.Item>
+ )}
+ />);
}
}
diff --git a/src/components/Page/index.js b/src/components/Page/index.js
index 983d127..137d8bc 100644
--- a/src/components/Page/index.js
+++ b/src/components/Page/index.js
@@ -2,7 +2,7 @@ import Panel from './Panel';
import Search from './Search';
import Ranking from './Ranking';
-export default {
+export {
Panel,
Search,
Ranking,
diff --git a/src/components/SiderMenu/SiderMenu.js
b/src/components/SiderMenu/SiderMenu.js
index 88abded..54e4e22 100644
--- a/src/components/SiderMenu/SiderMenu.js
+++ b/src/components/SiderMenu/SiderMenu.js
@@ -16,7 +16,7 @@ const getIcon = (icon) => {
return <img src={icon} alt="icon" className={styles.icon} />;
}
if (typeof icon === 'string') {
- return <Icon type={icon} />;
+ return (icon.indexOf('iconfont') > -1) ? <i className={icon} /> : <Icon
type={icon} />;
}
return icon;
};
diff --git a/src/components/Topology/index.js b/src/components/Topology/index.js
index 96bb101..983cc23 100644
--- a/src/components/Topology/index.js
+++ b/src/components/Topology/index.js
@@ -1,7 +1,7 @@
import AppTopology from './AppTopology';
import ServiceTopology from './ServiceTopology';
-export default {
+export {
AppTopology,
ServiceTopology,
};
diff --git a/src/index.ejs b/src/index.ejs
index fc8bf98..1f0c7fc 100644
--- a/src/index.ejs
+++ b/src/index.ejs
@@ -5,8 +5,9 @@
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Ant Design Pro</title>
+ <title>Sky Walking</title>
<link rel="icon" href="/favicon.png" type="image/x-icon">
+ <link rel="stylesheet" href="css/iconfont.css" />
</head>
<body>
diff --git a/src/layouts/BasicLayout.js b/src/layouts/BasicLayout.js
index 3e76189..8ec20e9 100644
--- a/src/layouts/BasicLayout.js
+++ b/src/layouts/BasicLayout.js
@@ -103,7 +103,7 @@ class BasicLayout extends React.PureComponent {
urlParams.searchParams.delete('redirect');
window.history.replaceState(null, 'redirect', urlParams.href);
} else {
- return '/dashboard/analysis';
+ return '/dashboard';
}
return redirect;
}
diff --git a/src/routes/Dashboard/Dashboard.js
b/src/routes/Dashboard/Dashboard.js
index c27079d..416f396 100644
--- a/src/routes/Dashboard/Dashboard.js
+++ b/src/routes/Dashboard/Dashboard.js
@@ -4,7 +4,7 @@ import { Row, Col, Card } from 'antd';
import {
ChartCard, Pie, MiniArea, Field,
} from '../../components/Charts';
-import { timeRange } from '../../utils/utils';
+import { timeRange } from '../../utils/time';
import { Panel, Ranking } from '../../components/Page';
@connect(state => ({
diff --git a/src/routes/Server/Server.js b/src/routes/Server/Server.js
index 835f05b..43322fb 100644
--- a/src/routes/Server/Server.js
+++ b/src/routes/Server/Server.js
@@ -5,7 +5,7 @@ import {
ChartCard, MiniArea, MiniBar, Line, Area, StackBar,
} from '../../components/Charts';
import DescriptionList from '../../components/DescriptionList';
-import { timeRange } from '../../utils/utils';
+import { timeRange } from '../../utils/time';
import { Panel, Search } from '../../components/Page';
const { Description } = DescriptionList;
diff --git a/src/routes/Service/Service.js b/src/routes/Service/Service.js
index 4abb882..2716a4a 100644
--- a/src/routes/Service/Service.js
+++ b/src/routes/Service/Service.js
@@ -4,7 +4,7 @@ import { Row, Col, Card, Form } from 'antd';
import {
ChartCard, MiniArea, MiniBar,
} from '../../components/Charts';
-import { timeRange } from '../../utils/utils';
+import { timeRange } from '../../utils/time';
import { ServiceTopology } from '../../components/Topology';
import { Panel, Search } from '../../components/Page';
--
To stop receiving notification emails like this one, please contact
[email protected].