summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaishan <[email protected]>2019-02-11 22:24:56 +0800
committerHaishan <[email protected]>2019-02-11 22:38:20 +0800
commit03e46d909685bbeba8a0fe50e11a6e3fa970bd55 (patch)
tree4ca7d2922cd57d9451b48f0f7c1ff08711d5ab4c
parentf364975545806bd98ca1e001e92f296c308f18c5 (diff)
style: new layout for proxy item
also: - speed up proxy item on hover scale up animation - reduce icons stroke width
-rw-r--r--src/components/Proxy.js6
-rw-r--r--src/components/Proxy.module.scss23
-rw-r--r--src/components/ProxyGroup.module.scss2
-rw-r--r--src/svg/ss.svg2
-rw-r--r--src/svg/vmess.svg2
-rw-r--r--webpack.common.js2
6 files changed, 26 insertions, 11 deletions
diff --git a/src/components/Proxy.js b/src/components/Proxy.js
index d1959d0..3d22ade 100644
--- a/src/components/Proxy.js
+++ b/src/components/Proxy.js
@@ -57,10 +57,10 @@ function Proxy({ now, name }) {
return (
<div className={s0.proxy}>
- <div className={s0.left} style={{ color }}>
- <Icon id={iconId} width={80} height={80} />
+ <div className={s0.iconWrapper} style={{ color }}>
+ <Icon id={iconId} width={70} height={70} />
</div>
- <div className={s0.right}>
+ <div className={s0.proxyDetail}>
<div className={s0.proxyName}>{name}</div>
{latency ? <ProxyLatency latency={latency} /> : null}
</div>
diff --git a/src/components/Proxy.module.scss b/src/components/Proxy.module.scss
index b7f0c8b..df6fcae 100644
--- a/src/components/Proxy.module.scss
+++ b/src/components/Proxy.module.scss
@@ -1,17 +1,32 @@
.proxy {
- display: flex;
+ position: relative;
+ height: 90px;
}
-.left {
+.iconWrapper {
+ position: absolute;
+ bottom: 0;
+ left: 20%;
+
display: flex;
align-items: center;
justify-content: center;
}
-.right {
- padding-left: 20px;
+.proxyDetail {
+ position: absolute;
+ top: 0;
+ left: 0;
+
+ width: 100%;
+ height: 100%;
}
.proxyName {
+ width: 100%;
+ padding-right: 20px;
+ overflow: hidden;
+ text-overflow: ellipsis;
margin: 10px 0;
+ font-size: 1.1em;
}
diff --git a/src/components/ProxyGroup.module.scss b/src/components/ProxyGroup.module.scss
index dd01018..f5218ea 100644
--- a/src/components/ProxyGroup.module.scss
+++ b/src/components/ProxyGroup.module.scss
@@ -19,7 +19,7 @@
.proxy {
width: 300px;
padding: 10px 5px;
- transition: transform 0.4s ease;
+ transition: transform 0.2s ease-in-out;
// transition: transform 0.4s ease, color 0.4s ease;
&.proxySelectable {
cursor: pointer;
diff --git a/src/svg/ss.svg b/src/svg/ss.svg
index 4311956..c9e2c97 100644
--- a/src/svg/ss.svg
+++ b/src/svg/ss.svg
@@ -1,5 +1,5 @@
<svg width="326" height="326" viewBox="0 0 326 326" xmlns="http://www.w3.org/2000/svg">
- <g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width="7">
+ <g fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke="currentColor" stroke-width="4">
<path d="M144.176 233.92l30.67 9.576-30.67 46.467zM145.414 209.789l99.04 30.2 48.29-202.404L29.589 171.717l80.11 27.613 121.73-96.816z"/>
</g>
</svg>
diff --git a/src/svg/vmess.svg b/src/svg/vmess.svg
index 00f7709..c81763c 100644
--- a/src/svg/vmess.svg
+++ b/src/svg/vmess.svg
@@ -1,5 +1,5 @@
<svg width="326" height="326" viewBox="0 0 326 326" xmlns="http://www.w3.org/2000/svg">
- <g stroke="currentColor" stroke-width="8" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
+ <g stroke="currentColor" stroke-width="4" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
<path d="M318.342 151.555L140.45 284.581l22.442 22.452z"/>
<path d="M80.768 224.894l32.993 33.003 204.581-106.34z"/>
<path d="M7.442 151.557h310.902L47.25 191.366z"/>
diff --git a/webpack.common.js b/webpack.common.js
index 3974471..d17f088 100644
--- a/webpack.common.js
+++ b/webpack.common.js
@@ -50,7 +50,7 @@ const cssExtractPlugin = new MiniCssExtractPlugin({
filename: isDev ? '[name].bundle.css' : '[name].[chunkhash].css'
});
-const LOCAL_IDENT_NAME_DEV = '[path]---[name]---[local]---[hash:base64:5]';
+const LOCAL_IDENT_NAME_DEV = '[path]_[name]_[local]_[hash:base64:5]';
const LOCAL_IDENT_NAME_PROD = '[hash:base64:10]';
const localIdentName = isDev ? LOCAL_IDENT_NAME_DEV : LOCAL_IDENT_NAME_PROD;