From 853ae0bc6421764fdc1ce44c750c33e827fc90ac Mon Sep 17 00:00:00 2001 From: Janx Date: Sun, 12 Feb 2023 17:25:22 +0800 Subject: [PATCH] change the UI --- src/api/playlist.js | 3 +- src/components/ArtistsInLine.vue | 12 +- src/components/Cover.vue | 9 +- src/components/CoverRow.vue | 4 + src/components/FMCard.vue | 5 + src/components/Navbar.vue | 6 +- src/components/TrackList.vue | 5 + src/components/TrackListItem.vue | 19 +- src/views/coSearch.vue | 494 +++++++++++++++++++++++++++++++ src/views/home.vue | 2 +- 10 files changed, 545 insertions(+), 14 deletions(-) create mode 100644 src/views/coSearch.vue diff --git a/src/api/playlist.js b/src/api/playlist.js index cbad59f..a4c3fdd 100644 --- a/src/api/playlist.js +++ b/src/api/playlist.js @@ -41,8 +41,9 @@ export function dailyRecommendPlaylist(params) { * - s : 歌单最近的 s 个收藏者, 默认为8 * @param {number} id * @param {boolean=} noCache + * @param {server} server */ -export function getPlaylistDetail(id, noCache = false, server) { +export function getPlaylistDetail(id, noCache = false, server = undefined) { let params = { id }; if (noCache) params.timestamp = new Date().getTime(); return request({ diff --git a/src/components/ArtistsInLine.vue b/src/components/ArtistsInLine.vue index e2c619d..7ce3175 100644 --- a/src/components/ArtistsInLine.vue +++ b/src/components/ArtistsInLine.vue @@ -2,9 +2,11 @@ {{ computedPrefix }} - {{ - ar.name - }} + {{ ar.name }} {{ ar.name }} , @@ -45,6 +45,7 @@ export default { alwaysShowPlayButton: { type: Boolean, default: true }, alwaysShowShadow: { type: Boolean, default: false }, clickCoverToPlay: { type: Boolean, default: false }, + clickCoverToPlayFun: { type: Function, default: undefined }, shadowMargin: { type: Number, default: 12 }, radius: { type: Number, default: 12 }, }, @@ -87,7 +88,11 @@ export default { playActions[this.type].bind(player)(this.id); }, goTo() { - this.$router.push({ name: this.type, params: { id: this.id } }); + this.$router.push({ + name: this.type, + params: { id: this.id }, + query: { server: this.$route.query.server }, + }); }, }, }; diff --git a/src/components/CoverRow.vue b/src/components/CoverRow.vue index 7e6635a..e77f2be 100644 --- a/src/components/CoverRow.vue +++ b/src/components/CoverRow.vue @@ -10,6 +10,8 @@ :id="parseInt(item.id)" :image-url="getImageUrl(item)" :type="type" + :click-cover-to-play="clickCoverToPlay" + :click-cover-to-play-fun="clickCoverToPlayFun" :play-button-size="type === 'artist' ? 26 : playButtonSize" />
@@ -56,6 +58,8 @@ export default { columnNumber: { type: Number, default: 5 }, gap: { type: String, default: '44px 16px' }, playButtonSize: { type: Number, default: 22 }, + clickCoverToPlay: { type: Boolean, default: false }, + clickCoverToPlayFun: { type: Function, default: undefined }, }, computed: { rowStyles() { diff --git a/src/components/FMCard.vue b/src/components/FMCard.vue index 1f0d28b..a54e76b 100644 --- a/src/components/FMCard.vue +++ b/src/components/FMCard.vue @@ -190,4 +190,9 @@ export default { } } } +@media (max-width: 576px) { + .fm .card-name { + display: none !important; + } +} diff --git a/src/components/Navbar.vue b/src/components/Navbar.vue index e0e6319..f4eafab 100644 --- a/src/components/Navbar.vue +++ b/src/components/Navbar.vue @@ -29,7 +29,7 @@
@@ -257,7 +257,7 @@ nav.has-custom-titlebar { } @media (max-width: 576px) { .search-box .container { - width: 120px !important; + width: 140px !important; } nav { padding: { diff --git a/src/components/TrackList.vue b/src/components/TrackList.vue index d4971e3..e024179 100644 --- a/src/components/TrackList.vue +++ b/src/components/TrackList.vue @@ -66,6 +66,7 @@ :key="itemKey === 'id' ? track.id : `${track.id}${index}`" :track-prop="track" :highlight-playing-track="highlightPlayingTrack" + :other-server-access="otherServerAccess" @dblclick.native="playThisList(track)" @click.right.native="openMenu($event, track, index)" /> @@ -144,6 +145,10 @@ export default { type: String, default: 'id', }, + otherServerAccess: { + type: Boolean, + default: true, + }, }, data() { return { diff --git a/src/components/TrackListItem.vue b/src/components/TrackListItem.vue index 0bc352e..9dd9af8 100644 --- a/src/components/TrackListItem.vue +++ b/src/components/TrackListItem.vue @@ -54,16 +54,23 @@ class="explicit-symbol before-artist" > - +
- {{ - album.name - }} + {{ album.name }}
@@ -102,6 +109,10 @@ export default { type: Boolean, default: true, }, + otherServerAccess: { + type: Boolean, + default: true, + }, }, data() { diff --git a/src/views/coSearch.vue b/src/views/coSearch.vue new file mode 100644 index 0000000..d2b7dbe --- /dev/null +++ b/src/views/coSearch.vue @@ -0,0 +1,494 @@ + + + + + diff --git a/src/views/home.vue b/src/views/home.vue index bd2f603..7df3e99 100644 --- a/src/views/home.vue +++ b/src/views/home.vue @@ -205,7 +205,7 @@ footer { @media (max-width: 576px) { .for-you-row { overflow: auto; - grid-template-columns: repeat(1, 1fr); + grid-template-columns: 100%; margin-bottom: 0; } }