[PR #1941] [MERGED] feat: lazy load the sidesheet content #1966

Closed
opened 2026-02-26 03:32:54 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/koel/koel/pull/1941
Author: @phanan
Created: 6/5/2025
Status: Merged
Merged: 6/5/2025
Merged by: @phanan

Base: masterHead: sidesheet-on-demand


📝 Commits (1)

  • b8de588 feat: lazy load the sidesheet content

📊 Changes

15 files changed (+244 additions, -93 deletions)

View changed files

📝 resources/assets/js/components/album/AlbumInfo.vue (+8 -2)
📝 resources/assets/js/components/artist/ArtistInfo.vue (+14 -6)
📝 resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheet.spec.ts (+58 -20)
📝 resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheet.vue (+83 -44)
resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheetPanelLazyWrapper.vue (+20 -0)
📝 resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheetTabHeader.spec.ts (+4 -4)
📝 resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheetTabHeader.vue (+11 -3)
📝 resources/assets/js/components/layout/main-wrapper/side-sheet/__snapshots__/SideSheet.spec.ts.snap (+3 -3)
resources/assets/js/components/ui/skeletons/ParagraphSkeleton.vue (+10 -0)
📝 resources/assets/js/components/ui/skeletons/SideSheetArtistAlbumInfoSkeleton.vue (+2 -6)
resources/assets/js/components/ui/skeletons/YouTubeVideoListItemSkeleton.vue (+12 -0)
resources/assets/js/components/ui/skeletons/YouTubeVideoListSkeleton.vue (+9 -0)
📝 resources/assets/js/components/ui/youtube/YouTubeVideoList.vue (+2 -1)
📝 resources/assets/js/stores/preferenceStore.ts (+6 -2)
📝 resources/assets/js/types.d.ts (+2 -2)

📄 Description

This PR makes the sidesheet content (album, artist, and other info) load on demand, i.e., only when the user activates the corresponding tabs. Loading skeletons have also been added for a better UX.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/koel/koel/pull/1941 **Author:** [@phanan](https://github.com/phanan) **Created:** 6/5/2025 **Status:** ✅ Merged **Merged:** 6/5/2025 **Merged by:** [@phanan](https://github.com/phanan) **Base:** `master` ← **Head:** `sidesheet-on-demand` --- ### 📝 Commits (1) - [`b8de588`](https://github.com/koel/koel/commit/b8de5880de8778b9b6698eae4f1f820bb9ece24f) feat: lazy load the sidesheet content ### 📊 Changes **15 files changed** (+244 additions, -93 deletions) <details> <summary>View changed files</summary> 📝 `resources/assets/js/components/album/AlbumInfo.vue` (+8 -2) 📝 `resources/assets/js/components/artist/ArtistInfo.vue` (+14 -6) 📝 `resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheet.spec.ts` (+58 -20) 📝 `resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheet.vue` (+83 -44) ➕ `resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheetPanelLazyWrapper.vue` (+20 -0) 📝 `resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheetTabHeader.spec.ts` (+4 -4) 📝 `resources/assets/js/components/layout/main-wrapper/side-sheet/SideSheetTabHeader.vue` (+11 -3) 📝 `resources/assets/js/components/layout/main-wrapper/side-sheet/__snapshots__/SideSheet.spec.ts.snap` (+3 -3) ➕ `resources/assets/js/components/ui/skeletons/ParagraphSkeleton.vue` (+10 -0) 📝 `resources/assets/js/components/ui/skeletons/SideSheetArtistAlbumInfoSkeleton.vue` (+2 -6) ➕ `resources/assets/js/components/ui/skeletons/YouTubeVideoListItemSkeleton.vue` (+12 -0) ➕ `resources/assets/js/components/ui/skeletons/YouTubeVideoListSkeleton.vue` (+9 -0) 📝 `resources/assets/js/components/ui/youtube/YouTubeVideoList.vue` (+2 -1) 📝 `resources/assets/js/stores/preferenceStore.ts` (+6 -2) 📝 `resources/assets/js/types.d.ts` (+2 -2) </details> ### 📄 Description This PR makes the sidesheet content (album, artist, and other info) load on demand, i.e., only when the user activates the corresponding tabs. Loading skeletons have also been added for a better UX. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 03:32:54 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/koel-koel#1966
No description provided.