mirror of
https://github.com/VueTorrent/VueTorrent.git
synced 2025-03-14 12:10:18 +03:00
0.5.1 (#110)
This commit is contained in:
parent
4358f24f03
commit
534e63d91d
10 changed files with 95 additions and 71 deletions
46
package-lock.json
generated
46
package-lock.json
generated
|
@ -1397,20 +1397,20 @@
|
|||
}
|
||||
},
|
||||
"@vue/cli-plugin-pwa": {
|
||||
"version": "4.5.10",
|
||||
"resolved": "https://registry.npmjs.org/@vue/cli-plugin-pwa/-/cli-plugin-pwa-4.5.10.tgz",
|
||||
"integrity": "sha512-scYCwOX5A9hkIF9PFkeQQMDcE/OSKDg3BCYrm7TcmRCtmY77jqRNcdX+KoUTPrt8A1b4OHFbzHs95C/r4y9eHw==",
|
||||
"version": "4.5.11",
|
||||
"resolved": "https://registry.npmjs.org/@vue/cli-plugin-pwa/-/cli-plugin-pwa-4.5.11.tgz",
|
||||
"integrity": "sha512-7wvNdR8EXRWaLlybPlk4B6+lE8y+sG2kXq69EyH4ILRmZnFYc22dY22eUhR1EIFTmRxHR0g8qDBrp1BvaNeaYA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/cli-shared-utils": "^4.5.10",
|
||||
"@vue/cli-shared-utils": "^4.5.11",
|
||||
"webpack": "^4.0.0",
|
||||
"workbox-webpack-plugin": "^4.3.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vue/cli-shared-utils": {
|
||||
"version": "4.5.10",
|
||||
"resolved": "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-4.5.10.tgz",
|
||||
"integrity": "sha512-Lid6FflDqcvo/JBIBjUriAQ1RkQaKbBpzXSLEK/JmoKkQRHW/rRhDLGI1dEVyOLYnDEiL1m8o1xPJaplUUiXpA==",
|
||||
"version": "4.5.11",
|
||||
"resolved": "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-4.5.11.tgz",
|
||||
"integrity": "sha512-+aaQ+ThQG3+WMexfSWNl0y6f43edqVqRNbguE53F3TIH81I7saS5S750ayqXhZs2r6STJJyqorQnKtAWfHo29A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@hapi/joi": "^15.0.1",
|
||||
|
@ -4070,9 +4070,9 @@
|
|||
}
|
||||
},
|
||||
"dayjs": {
|
||||
"version": "1.10.3",
|
||||
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.3.tgz",
|
||||
"integrity": "sha512-/2fdLN987N8Ki7Id8BUN2nhuiRyxTLumQnSQf9CNncFCyqFsSKb9TNhzRYcC8K8eJSJOKvbvkImo/MKKhNi4iw=="
|
||||
"version": "1.10.4",
|
||||
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.4.tgz",
|
||||
"integrity": "sha512-RI/Hh4kqRc1UKLOAf/T5zdMMX5DQIlDxwUe3wSyMMnEbGunnpENCdbUgM+dW7kXidZqCttBrmw7BhN4TMddkCw=="
|
||||
},
|
||||
"de-indent": {
|
||||
"version": "1.0.2",
|
||||
|
@ -5000,15 +5000,15 @@
|
|||
}
|
||||
},
|
||||
"eslint-plugin-vue": {
|
||||
"version": "7.4.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.4.1.tgz",
|
||||
"integrity": "sha512-W/xPNHYIkGJphLUM2UIYYGKbRw3BcDoMIPY9lu1TTa2YLiZoxurddfnmOP+UOVywxb5vi438ejzwvKdZqydtIw==",
|
||||
"version": "7.5.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.5.0.tgz",
|
||||
"integrity": "sha512-QnMMTcyV8PLxBz7QQNAwISSEs6LYk2LJvGlxalXvpCtfKnqo7qcY0aZTIxPe8QOnHd7WCwiMZLOJzg6A03T0Gw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"eslint-utils": "^2.1.0",
|
||||
"natural-compare": "^1.4.0",
|
||||
"semver": "^7.3.2",
|
||||
"vue-eslint-parser": "^7.3.0"
|
||||
"vue-eslint-parser": "^7.4.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"lru-cache": {
|
||||
|
@ -10120,9 +10120,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"sass": {
|
||||
"version": "1.32.4",
|
||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.32.4.tgz",
|
||||
"integrity": "sha512-N0BT0PI/t3+gD8jKa83zJJUb7ssfQnRRfqN+GIErokW6U4guBpfYl8qYB+OFLEho+QvnV5ZH1R9qhUC/Z2Ch9w==",
|
||||
"version": "1.32.5",
|
||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.32.5.tgz",
|
||||
"integrity": "sha512-kU1yJ5zUAmPxr7f3q0YXTAd1oZjSR1g3tYyv+xu0HZSl5JiNOaE987eiz7wCUvbm4I9fGWGU2TgApTtcP4GMNQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"chokidar": ">=2.0.0 <4.0.0"
|
||||
|
@ -12065,9 +12065,9 @@
|
|||
}
|
||||
},
|
||||
"vue-eslint-parser": {
|
||||
"version": "7.3.0",
|
||||
"resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.3.0.tgz",
|
||||
"integrity": "sha512-n5PJKZbyspD0+8LnaZgpEvNCrjQx1DyDHw8JdWwoxhhC+yRip4TAvSDpXGf9SWX6b0umeB5aR61gwUo6NVvFxw==",
|
||||
"version": "7.4.1",
|
||||
"resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.4.1.tgz",
|
||||
"integrity": "sha512-AFvhdxpFvliYq1xt/biNBslTHE/zbEvSnr1qfHA/KxRIpErmEDrQZlQnvEexednRHmLfDNOMuDYwZL5xkLzIXQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"debug": "^4.1.1",
|
||||
|
@ -12219,9 +12219,9 @@
|
|||
}
|
||||
},
|
||||
"vuetify": {
|
||||
"version": "2.4.2",
|
||||
"resolved": "https://registry.npmjs.org/vuetify/-/vuetify-2.4.2.tgz",
|
||||
"integrity": "sha512-8W1928Fv6GKwLiOThutYf2wtD5C9+vcCavlI8NT0YxNOVvluoL8xrep8mGGwDsCkay+4LzaAX92owKeNi3kpWg=="
|
||||
"version": "2.4.3",
|
||||
"resolved": "https://registry.npmjs.org/vuetify/-/vuetify-2.4.3.tgz",
|
||||
"integrity": "sha512-i2/Df0U0sedlaCbft4NMbna7WXbTCBhKVYTMjBrLVzrYTTWqzSO7ZCxLuDRY7MjwQhn7AOec7ent9U/NyIICqA=="
|
||||
},
|
||||
"vuetify-loader": {
|
||||
"version": "1.6.0",
|
||||
|
|
12
package.json
12
package.json
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "vuetorrent",
|
||||
"version": "0.5.0",
|
||||
"version": "0.5.1",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"start": "npm run serve",
|
||||
|
@ -13,7 +13,7 @@
|
|||
"apexcharts": "^3.23.1",
|
||||
"axios": "^0.21.1",
|
||||
"core-js": "^3.8.3",
|
||||
"dayjs": "^1.10.3",
|
||||
"dayjs": "^1.10.4",
|
||||
"fuse.js": "^6.4.6",
|
||||
"lodash": "^4.17.20",
|
||||
"register-service-worker": "^1.7.2",
|
||||
|
@ -27,7 +27,7 @@
|
|||
"vue-toastification": "^1.7.11",
|
||||
"vue2-perfect-scrollbar": "^1.5.0",
|
||||
"vuedraggable": "^2.24.3",
|
||||
"vuetify": "^2.4.2",
|
||||
"vuetify": "^2.4.3",
|
||||
"vuex": "^3.6.0",
|
||||
"vuex-persist": "^3.1.3"
|
||||
},
|
||||
|
@ -35,17 +35,17 @@
|
|||
"@mdi/js": "^5.9.55",
|
||||
"@vue/cli-plugin-babel": "~4.3.0",
|
||||
"@vue/cli-plugin-eslint": "~4.3.0",
|
||||
"@vue/cli-plugin-pwa": "^4.5.10",
|
||||
"@vue/cli-plugin-pwa": "^4.5.11",
|
||||
"@vue/cli-service": "~4.3.0",
|
||||
"@vue/eslint-config-prettier": "^6.0.0",
|
||||
"babel-eslint": "^10.1.0",
|
||||
"eslint": "^7.18.0",
|
||||
"eslint-config-google": "^0.14.0",
|
||||
"eslint-plugin-prettier": "^3.3.1",
|
||||
"eslint-plugin-vue": "^7.4.1",
|
||||
"eslint-plugin-vue": "^7.5.0",
|
||||
"fibers": "^5.0.0",
|
||||
"node-sass": "^4.14.1",
|
||||
"sass": "^1.32.4",
|
||||
"sass": "^1.32.5",
|
||||
"sass-loader": "^8.0.2",
|
||||
"vue-cli-plugin-vuetify": "^2.0.9",
|
||||
"vue-template-compiler": "^2.6.12",
|
||||
|
|
|
@ -1,25 +1,35 @@
|
|||
<template>
|
||||
<div v-if="status">
|
||||
<div class="text-uppercase white--text caption ml-4">
|
||||
<div class="text-uppercase white--text caption ml-4 font-weight-medium">
|
||||
current speed
|
||||
</div>
|
||||
<v-card color="secondary" flat class="mr-2 ml-2">
|
||||
<v-layout row wrap class="pa-3 mt-1 project nav_download mx-auto">
|
||||
<v-icon color="download">
|
||||
<v-card color="secondary" flat class="mr-2 ml-2 text-center">
|
||||
<v-layout row wrap class="py-3 px-1 mt-1 project mx-auto">
|
||||
<v-icon class="mt-2" color="download" size="18px">
|
||||
{{ mdiChevronDown }}
|
||||
</v-icon>
|
||||
<span class="download--text title">
|
||||
{{ status.dlspeed | getDataValue(1) }}
|
||||
<span class="font-weight-light caption">
|
||||
<span
|
||||
class="download--text title"
|
||||
style="font-size: 1.1em !important;"
|
||||
>
|
||||
204.34
|
||||
<span class="font-weight-light caption font-weight-regular">
|
||||
{{ status.dlspeed | getDataUnit(1) }}/s
|
||||
</span>
|
||||
</span>
|
||||
<v-icon class="pl-5" color="upload">
|
||||
<v-icon
|
||||
class="pl-2 mt-1"
|
||||
color="upload"
|
||||
size="24px"
|
||||
>
|
||||
{{ mdiChevronUp }}
|
||||
</v-icon>
|
||||
<span class="upload--text title">
|
||||
{{ status.upspeed | getDataValue }}
|
||||
<span class="font-weight-light caption">
|
||||
<span
|
||||
class="upload--text title"
|
||||
style="font-size: 1.1em !important;"
|
||||
>
|
||||
204.34
|
||||
<span class="font-weight-light caption font-weight-regular">
|
||||
{{ status.upspeed | getDataUnit }}/s
|
||||
</span>
|
||||
</span>
|
||||
|
|
|
@ -1,12 +1,16 @@
|
|||
<template>
|
||||
<div style="margin-top: 30px">
|
||||
<div class="mt-1">
|
||||
<label class="white--text text-uppercase font-weight-medium caption ml-4">
|
||||
Status
|
||||
</label>
|
||||
<v-select
|
||||
name="state_filter"
|
||||
aria-label="state_filter"
|
||||
:value="selectedState"
|
||||
class="ml-2 mr-2"
|
||||
label="STATUS"
|
||||
solo
|
||||
flat
|
||||
solo
|
||||
:items="options"
|
||||
item-text="name"
|
||||
color="download"
|
||||
|
@ -14,12 +18,15 @@
|
|||
background-color="secondary"
|
||||
@input="setState"
|
||||
/>
|
||||
<label class="white--text text-uppercase font-weight-medium caption ml-4">
|
||||
Category
|
||||
</label>
|
||||
<v-select
|
||||
aria-label="category_filter"
|
||||
:value="selectedCategory"
|
||||
solo
|
||||
flat
|
||||
class="ml-2 mr-2 side-select"
|
||||
solo
|
||||
class="ml-2 mr-2"
|
||||
label="CATEGORIES"
|
||||
:items="availableCategories"
|
||||
item-text="name"
|
||||
|
@ -29,12 +36,15 @@
|
|||
@input="setCategory"
|
||||
/>
|
||||
<div v-if="showTrackerFilter">
|
||||
<label class="white--text text-uppercase font-weight-medium caption ml-4">
|
||||
Tracker
|
||||
</label>
|
||||
<v-select
|
||||
aria-label="tracker_filter"
|
||||
:value="selectedTracker"
|
||||
solo
|
||||
flat
|
||||
class="ml-2 mr-2 side-select"
|
||||
solo
|
||||
class="ml-2 mr-2"
|
||||
label="TRACKER"
|
||||
:items="availableTrackers"
|
||||
item-text="name"
|
||||
|
@ -44,12 +54,6 @@
|
|||
@input="setTracker"
|
||||
/>
|
||||
</div>
|
||||
<div
|
||||
style="font-size: 0.9em"
|
||||
class="download--text text-uppercase text-center"
|
||||
>
|
||||
{{ torrentCountString }}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -78,7 +82,7 @@ export default {
|
|||
selectedTracker: null
|
||||
}),
|
||||
computed: {
|
||||
...mapGetters(['getCategories', 'getTrackers', 'getTorrentCountString']),
|
||||
...mapGetters(['getCategories', 'getTrackers']),
|
||||
...mapState(['sort_options']),
|
||||
availableCategories() {
|
||||
const categories = [
|
||||
|
@ -105,9 +109,6 @@ export default {
|
|||
}
|
||||
|
||||
return trackers
|
||||
},
|
||||
torrentCountString() {
|
||||
return this.getTorrentCountString()
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
@ -148,5 +149,8 @@ export default {
|
|||
.v-select__slot > label {
|
||||
color: white !important;
|
||||
}
|
||||
#app .v-select .v-text-field__details {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
|
|
@ -43,6 +43,7 @@
|
|||
<SpeedGraph v-if="webuiSettings.showSpeedGraph" />
|
||||
|
||||
<div class="mt-4" />
|
||||
<FilterSelect :show-tracker-filter="webuiSettings.showTrackerFilter" />
|
||||
<SessionStats
|
||||
v-if="webuiSettings.showSessionStat"
|
||||
:status="status"
|
||||
|
@ -52,7 +53,13 @@
|
|||
v-if="webuiSettings.showFreeSpace"
|
||||
:space="status.freeDiskSpace"
|
||||
/>
|
||||
<FilterSelect :show-tracker-filter="webuiSettings.showTrackerFilter" />
|
||||
<div
|
||||
style="font-size: 0.9em"
|
||||
class="download--text text-uppercase text-center mt-5"
|
||||
>
|
||||
{{ torrentCountString }}
|
||||
</div>
|
||||
|
||||
<div class="mt-auto">
|
||||
<BottomActions />
|
||||
</div>
|
||||
|
@ -90,12 +97,15 @@ export default {
|
|||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['getTheme', 'getWebuiSettings', 'getStatus']),
|
||||
...mapGetters(['getTheme', 'getWebuiSettings', 'getStatus', 'getTorrentCountString']),
|
||||
webuiSettings() {
|
||||
return this.getWebuiSettings()
|
||||
},
|
||||
status() {
|
||||
return this.getStatus()
|
||||
},
|
||||
torrentCountString() {
|
||||
return this.getTorrentCountString()
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<template #activator="{ on }">
|
||||
<v-list-item link v-on="on" @click="toggleSpeed">
|
||||
<v-icon
|
||||
color="white"
|
||||
:color="altSpeed ? 'accent' : 'white'"
|
||||
>
|
||||
{{ altSpeed ? mdiSpeedometerSlow : mdiSpeedometer }}
|
||||
</v-icon>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
<template>
|
||||
<div v-if="status">
|
||||
<div class="text-uppercase white--text caption ml-4">
|
||||
<div v-if="status" class="mt-3">
|
||||
<label class="text-uppercase white--text caption font-weight-medium ml-4">
|
||||
Session Stats
|
||||
</div>
|
||||
<v-card flat color="secondary" class="mr-2 ml-2">
|
||||
</label>
|
||||
<v-card flat color="secondary" class="mr-2 ml-2 mb-4">
|
||||
<v-layout row wrap class="pa-3 mt-1 project mx-auto">
|
||||
<v-flex md6>
|
||||
<div
|
||||
|
@ -23,8 +23,8 @@
|
|||
</v-flex>
|
||||
</v-layout>
|
||||
</v-card>
|
||||
<v-card flat color="secondary" class="ml-2 mr-2 mt-1">
|
||||
<v-layout row wrap class="pa-3 project mx-auto">
|
||||
<v-card flat color="secondary" class="ml-2 mr-2">
|
||||
<v-layout row wrap class="pa-3 mt-1 project mx-auto">
|
||||
<v-flex md6>
|
||||
<div
|
||||
style="margin-top: 6px"
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
@click="toggleSelectMode()"
|
||||
>
|
||||
<v-icon color="grey">
|
||||
{{ $store.state.selectMode ? mdiSelectOff : mdiSelectMultiple }}
|
||||
{{ $store.state.selectMode ? mdiCheckboxMarked : mdiCheckboxBlankOutline }}
|
||||
</v-icon>
|
||||
</v-btn>
|
||||
</template>
|
||||
|
@ -154,7 +154,7 @@ import { General } from '@/mixins'
|
|||
import { mapState } from 'vuex'
|
||||
import qbit from '@/services/qbit'
|
||||
import {
|
||||
mdiSelectOff, mdiSelectMultiple, mdiSort, mdiCog,
|
||||
mdiSort, mdiCog, mdiCheckboxBlankOutline, mdiCheckboxMarked,
|
||||
mdiSearchWeb, mdiDelete, mdiPlus, mdiPlay, mdiPause
|
||||
} from '@mdi/js'
|
||||
|
||||
|
@ -172,8 +172,8 @@ export default {
|
|||
mdiPause,
|
||||
mdiDelete,
|
||||
mdiCog,
|
||||
mdiSelectOff,
|
||||
mdiSelectMultiple
|
||||
mdiCheckboxMarked,
|
||||
mdiCheckboxBlankOutline
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
:class="style"
|
||||
>
|
||||
<v-flex xs12 class="ma-1 mt-0" row>
|
||||
<span class="truncate subtitle-1">
|
||||
<span class="subtitle-1">
|
||||
{{ torrent.name }}
|
||||
</span>
|
||||
</v-flex>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<div class="px-1 px-sm-5 pt-4 background" @click.self="resetSelected">
|
||||
<v-row no-gutters class="grey--text">
|
||||
<v-col>
|
||||
<h1 style="font-size: 1.3em !important" class="subtitle-1 ml-2">
|
||||
<h1 style="font-size: 1.6em !important" class="subtitle-1 ml-2">
|
||||
Dashboard
|
||||
</h1>
|
||||
</v-col>
|
||||
|
|
Loading…
Add table
Reference in a new issue