mirror of
https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-11 00:29:03 +08:00
大量UI改进
This commit is contained in:
parent
3f002e0c52
commit
60647fd5ca
@ -9,7 +9,7 @@
|
|||||||
<meta http-equiv="Pragma" content="no-cache" />
|
<meta http-equiv="Pragma" content="no-cache" />
|
||||||
<meta http-equiv="Expires" content="0" />
|
<meta http-equiv="Expires" content="0" />
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes"/>
|
<meta name="apple-mobile-web-app-capable" content="yes"/>
|
||||||
<!-- <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/>-->
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/>
|
||||||
<meta name="viewport"
|
<meta name="viewport"
|
||||||
content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover"/>
|
content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover"/>
|
||||||
<link rel="Bookmark" href="https://raw.githubusercontent.com/58xinian/icon/master/Sub-Store1.png"/>
|
<link rel="Bookmark" href="https://raw.githubusercontent.com/58xinian/icon/master/Sub-Store1.png"/>
|
||||||
|
@ -334,7 +334,7 @@ html, body {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.v-toolbar__title {
|
.theme--light.v-toolbar__title {
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
color: #555;
|
color: #555;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
@ -360,7 +360,6 @@ html, body {
|
|||||||
|
|
||||||
.v-icon {
|
.v-icon {
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
color: #555 !important;
|
|
||||||
margin-top: -3px;
|
margin-top: -3px;
|
||||||
top: 0;
|
top: 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -830,7 +829,6 @@ html, body {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.v-card__title {
|
.v-card__title {
|
||||||
color: #3c4858;
|
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
padding-top: 7px;
|
padding-top: 7px;
|
||||||
padding-bottom: 2px;
|
padding-bottom: 2px;
|
||||||
@ -1138,11 +1136,6 @@ html, body {
|
|||||||
padding: 24px 24px 0;
|
padding: 24px 24px 0;
|
||||||
|
|
||||||
.v-icon {
|
.v-icon {
|
||||||
//position: absolute;
|
|
||||||
//top: 15px;
|
|
||||||
//right: 20px;
|
|
||||||
color: #999;
|
|
||||||
opacity: .5;
|
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
|
@ -50,11 +50,9 @@
|
|||||||
</v-card-title>
|
</v-card-title>
|
||||||
|
|
||||||
<v-card-text>
|
<v-card-text>
|
||||||
{{ info.isp }}
|
<h4>{{ info.isp }}</h4>
|
||||||
<br/>
|
<h4>{{ info.region }}</h4>
|
||||||
{{ info.region }}
|
<h4>{{ info.ip }}</h4>
|
||||||
<br/>
|
|
||||||
{{ info.ip }}
|
|
||||||
</v-card-text>
|
</v-card-text>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
|
@ -65,11 +65,15 @@
|
|||||||
</template>
|
</template>
|
||||||
<v-list dense>
|
<v-list dense>
|
||||||
<v-list-item
|
<v-list-item
|
||||||
v-for="(name, idx) in getSources(newArtifact.type)"
|
v-for="(sub, idx) in getSources(newArtifact.type)"
|
||||||
@click="newArtifact.source = name"
|
@click="newArtifact.source = sub.name"
|
||||||
:key="idx"
|
:key="idx"
|
||||||
>
|
>
|
||||||
<v-list-item-title>{{ name }}</v-list-item-title>
|
<v-list-item-avatar>
|
||||||
|
<v-icon v-if="!sub.icon" color="teal darken-1">mdi-cloud</v-icon>
|
||||||
|
<v-img :src="sub.icon" v-else :class="getIconClass(sub.icon)"/>
|
||||||
|
</v-list-item-avatar>
|
||||||
|
<v-list-item-title>{{ sub.name }}</v-list-item-title>
|
||||||
</v-list-item>
|
</v-list-item>
|
||||||
</v-list>
|
</v-list>
|
||||||
</v-menu>
|
</v-menu>
|
||||||
@ -90,7 +94,7 @@
|
|||||||
@click="newArtifact.platform = platform"
|
@click="newArtifact.platform = platform"
|
||||||
>
|
>
|
||||||
<v-list-item-avatar>
|
<v-list-item-avatar>
|
||||||
<v-img :src="getIcon(platform)"></v-img>
|
<v-img :src="getIcon(platform)" :class="getIconClass('#invert')"></v-img>
|
||||||
</v-list-item-avatar>
|
</v-list-item-avatar>
|
||||||
<v-list-item-title>{{ platform }}</v-list-item-title>
|
<v-list-item-title>{{ platform }}</v-list-item-title>
|
||||||
</v-list-item>
|
</v-list-item>
|
||||||
@ -114,7 +118,7 @@
|
|||||||
<template v-for="(artifact, idx) in artifacts">
|
<template v-for="(artifact, idx) in artifacts">
|
||||||
<v-list-item three-line dense :key="artifact.name">
|
<v-list-item three-line dense :key="artifact.name">
|
||||||
<v-list-item-avatar>
|
<v-list-item-avatar>
|
||||||
<v-img :src="getIcon(artifact.platform)"/>
|
<v-img :src="getIcon(artifact.platform)" :class="getIconClass('#invert')"/>
|
||||||
</v-list-item-avatar>
|
</v-list-item-avatar>
|
||||||
<v-list-item-content>
|
<v-list-item-content>
|
||||||
<v-list-item-title>
|
<v-list-item-title>
|
||||||
@ -201,10 +205,11 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
getIcon(platform) {
|
getIcon(platform) {
|
||||||
const ICONS = {
|
const ICONS = {
|
||||||
"Clash": "https://github.com/Dreamacro/clash/raw/master/docs/logo.png",
|
"Clash": "https://raw.githubusercontent.com/58xinian/icon/master/clash_mini.png",
|
||||||
"QX": "https://raw.githubusercontent.com/Orz-3/task/master/quantumultx.png",
|
"QX": "https://raw.githubusercontent.com/Orz-3/mini/none/quanX.png",
|
||||||
"Surge": "https://raw.githubusercontent.com/Orz-3/task/master/surge.png",
|
"Surge": "https://raw.githubusercontent.com/Orz-3/mini/none/surge.png",
|
||||||
"Loon": "https://raw.githubusercontent.com/Orz-3/task/master/loon.png"
|
"Loon": "https://raw.githubusercontent.com/Orz-3/mini/none/loon.png",
|
||||||
|
"ShadowRocket": "https://raw.githubusercontent.com/Orz-3/mini/master/loon.png"
|
||||||
}
|
}
|
||||||
return ICONS[platform];
|
return ICONS[platform];
|
||||||
},
|
},
|
||||||
@ -287,12 +292,22 @@ export default {
|
|||||||
case "collection":
|
case "collection":
|
||||||
data = this.$store.state.collections;
|
data = this.$store.state.collections;
|
||||||
}
|
}
|
||||||
return Object.keys(data);
|
return Object.keys(data).map(k => data[k]);
|
||||||
|
},
|
||||||
|
|
||||||
|
getIconClass(url) {
|
||||||
|
return url.indexOf('#invert') !== -1 && !this.$store.state.settings.theme.darkMode ? 'invert' : ''
|
||||||
},
|
},
|
||||||
|
|
||||||
openGist() {
|
openGist() {
|
||||||
window.open(`https://gist.github.com${ '/' + this.settings.githubUser || ''}`)
|
window.open(`https://gist.github.com${'/' + this.settings.githubUser || ''}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.invert {
|
||||||
|
filter: invert(100%);
|
||||||
|
}
|
||||||
|
</style>
|
@ -36,7 +36,7 @@
|
|||||||
<v-list-item v-for="sub in availableSubs" :key="sub.name">
|
<v-list-item v-for="sub in availableSubs" :key="sub.name">
|
||||||
<v-list-item-avatar>
|
<v-list-item-avatar>
|
||||||
<v-icon v-if="!sub.icon" color="teal darken-1">mdi-cloud</v-icon>
|
<v-icon v-if="!sub.icon" color="teal darken-1">mdi-cloud</v-icon>
|
||||||
<v-img :src="sub.icon" v-else :class="sub.icon.indexOf('#invert') !== -1 ? 'invert' : ''"/>
|
<v-img :src="sub.icon" v-else :class="getIconClass(sub.icon)"/>
|
||||||
</v-list-item-avatar>
|
</v-list-item-avatar>
|
||||||
<v-list-item-content>
|
<v-list-item-content>
|
||||||
{{ sub.name }}
|
{{ sub.name }}
|
||||||
@ -404,6 +404,9 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getIconClass(url) {
|
||||||
|
return url.indexOf('#invert') !== -1 && !this.$store.state.settings.theme.darkMode ? 'invert' : ''
|
||||||
|
},
|
||||||
save() {
|
save() {
|
||||||
if (this.isCollection) {
|
if (this.isCollection) {
|
||||||
if (this.options.name && this.selected) {
|
if (this.options.name && this.selected) {
|
||||||
@ -570,7 +573,7 @@ function uuidv4() {
|
|||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style scoped>
|
||||||
.invert {
|
.invert {
|
||||||
filter: invert(100%);
|
filter: invert(100%);
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
>
|
>
|
||||||
<v-list-item-avatar>
|
<v-list-item-avatar>
|
||||||
<v-icon v-if="!sub.icon" color="teal darken-1">mdi-cloud</v-icon>
|
<v-icon v-if="!sub.icon" color="teal darken-1">mdi-cloud</v-icon>
|
||||||
<v-img :src="sub.icon" v-else :class="sub.icon.indexOf('#invert') !== -1 ? 'invert' : ''"/>
|
<v-img :src="sub.icon" v-else :class="getIconClass(sub.icon)"/>
|
||||||
</v-list-item-avatar>
|
</v-list-item-avatar>
|
||||||
|
|
||||||
<v-list-item-content>
|
<v-list-item-content>
|
||||||
@ -72,7 +72,7 @@
|
|||||||
>
|
>
|
||||||
<v-list-item-avatar>
|
<v-list-item-avatar>
|
||||||
<v-icon v-if="!collection.icon" color="teal darken-1">mdi-cloud</v-icon>
|
<v-icon v-if="!collection.icon" color="teal darken-1">mdi-cloud</v-icon>
|
||||||
<v-img :src="collection.icon" v-else :class="collection.icon.indexOf('#invert') !== -1 ? 'invert' : ''"/>
|
<v-img :src="collection.icon" v-else :class="getIconClass(collection.icon)"/>
|
||||||
</v-list-item-avatar>
|
</v-list-item-avatar>
|
||||||
<v-list-item-content>
|
<v-list-item-content>
|
||||||
<v-list-item-title v-text="collection.name" class="font-weight-medium"></v-list-item-title>
|
<v-list-item-title v-text="collection.name" class="font-weight-medium"></v-list-item-title>
|
||||||
@ -123,7 +123,9 @@
|
|||||||
<v-toolbar>
|
<v-toolbar>
|
||||||
<v-icon>mdi-cloud</v-icon>
|
<v-icon>mdi-cloud</v-icon>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
<v-toolbar-title><h4>节点列表</h4></v-toolbar-title>
|
<v-toolbar-title class="flex text-xs-center">
|
||||||
|
<h4>节点列表</h4>
|
||||||
|
</v-toolbar-title>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
<v-toolbar-items>
|
<v-toolbar-items>
|
||||||
<v-btn icon @click="refreshProxyList" v-if="sub">
|
<v-btn icon @click="refreshProxyList" v-if="sub">
|
||||||
@ -254,22 +256,9 @@ export default {
|
|||||||
refreshProxyList() {
|
refreshProxyList() {
|
||||||
this.$refs.proxyList.refresh();
|
this.$refs.proxyList.refresh();
|
||||||
},
|
},
|
||||||
moveUpSubscription(name) {
|
getIconClass(url) {
|
||||||
let index = 0;
|
return url.indexOf('#invert') !== -1 && !this.$store.state.settings.theme.darkMode ? 'invert' : ''
|
||||||
for (; index < this.subscriptions.length; index++) {
|
}
|
||||||
if (this.subscriptions[index].name === name) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (index === 0) return;
|
|
||||||
// otherwise swap with previous one
|
|
||||||
const prev = this.subscriptions[index - 1];
|
|
||||||
const cur = this.subscriptions[index];
|
|
||||||
this.subscriptions.splice(index - 1, 2, cur, prev);
|
|
||||||
},
|
|
||||||
// moveDownSubscription(name) {
|
|
||||||
//
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -88,7 +88,6 @@
|
|||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
<v-btn small text @click="save()" color="primary">保存</v-btn>
|
<v-btn small text @click="save()" color="primary">保存</v-btn>
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
<v-divider/>
|
|
||||||
</v-card>
|
</v-card>
|
||||||
|
|
||||||
<!-- <v-card>-->
|
<!-- <v-card>-->
|
||||||
|
Loading…
x
Reference in New Issue
Block a user