From 8ee1e35e7797e9b6f07b65546e14f0c73aaa8f78 Mon Sep 17 00:00:00 2001 From: Ethan Pippin Date: Tue, 29 Mar 2022 12:41:51 -0600 Subject: [PATCH] move logic --- Shared/ViewModels/EpisodesRowManager.swift | 4 ++++ Swiftfin/Components/EpisodesRowView/EpisodesRowView.swift | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Shared/ViewModels/EpisodesRowManager.swift b/Shared/ViewModels/EpisodesRowManager.swift index 5bc12889..47bbd2e3 100644 --- a/Shared/ViewModels/EpisodesRowManager.swift +++ b/Shared/ViewModels/EpisodesRowManager.swift @@ -21,6 +21,10 @@ protocol EpisodesRowManager: ViewModel { extension EpisodesRowManager { + var sortedSeasons: [BaseItemDto] { + Array(seasonsEpisodes.keys).sorted(by: { $0.indexNumber ?? 0 < $1.indexNumber ?? 0 }) + } + // Also retrieves the current season episodes if available func retrieveSeasons() { TvShowsAPI.getSeasons(seriesId: item.seriesId ?? "", diff --git a/Swiftfin/Components/EpisodesRowView/EpisodesRowView.swift b/Swiftfin/Components/EpisodesRowView/EpisodesRowView.swift index 6f6831a8..1ba76a1a 100644 --- a/Swiftfin/Components/EpisodesRowView/EpisodesRowView.swift +++ b/Swiftfin/Components/EpisodesRowView/EpisodesRowView.swift @@ -29,7 +29,7 @@ struct EpisodesRowView: View where RowManager: EpisodesRowManager { } } else { Menu { - ForEach(Array(viewModel.seasonsEpisodes.keys).sorted(by: { $0.indexNumber ?? 0 < $1.indexNumber ?? 0 }), + ForEach(viewModel.sortedSeasons, id: \.self) { season in Button { viewModel.select(season: season)