jellyflood/Shared/ViewModels
Ashik K fdd1cdc15b Implement Electronic Program Guide (EPG) for Live TV
Features:
- Full EPG grid with channels and time slots
- 12-hour program window with auto-refresh every 5 minutes
- Duration-based cell widths (3px/min)
- Live program highlighting with progress bars
- Current time indicator (red line)
- Direct channel playback from guide
- Auto-scroll to currently airing programs

Changes:
- Add EPGViewModel for data fetching and state management
- Add EPGProgramCell, EPGChannelRow, EPGTimelineHeader, EPGCurrentTimeIndicator components
- Update ProgramGuideView with complete EPG implementation
- Make Channels default Live TV tab (was Program Guide)
- Fix channel images in EPG to match Channels view display
- Fix Live TV playback crash (audioStreams array bounds check)
- Apply dark pink background throughout app

Slash Commands:
- Add /init-dev - Initialize dev session with project context
- Add /sim - Build and launch in Apple TV simulator

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-17 19:23:53 +02:00
..
AdminDashboard Implement localization for hardcoded strings (#1510) 2025-05-02 13:04:34 -04:00
ItemAdministration [iOS & tvOS] Upgrade SDK to 10.10 (#1463) 2025-04-06 23:42:47 -04:00
ItemViewModel Rename all Swiftfin files to lowercase jellypig 2025-10-17 09:28:57 +02:00
LibraryViewModel Add channel support and debug logging for Xtream content display 2025-10-17 10:49:20 +02:00
MediaViewModel Add channel support and debug logging for Xtream content display 2025-10-17 10:49:20 +02:00
VideoPlayerManager [iOS & tvOS] Upgrade SDK to 10.10 (#1463) 2025-04-06 23:42:47 -04:00
ChannelLibraryViewModel.swift [iOS & tvOS] Upgrade SDK to 10.10 (#1463) 2025-04-06 23:42:47 -04:00
ConnectToServerViewModel.swift Rename all Swiftfin files to lowercase jellypig 2025-10-17 09:28:57 +02:00
DownloadListViewModel.swift [Meta] 2025 Disclaimer (#1381) 2025-01-02 16:05:15 -07:00
EPGViewModel.swift Implement Electronic Program Guide (EPG) for Live TV 2025-10-17 19:23:53 +02:00
FilterViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
HomeViewModel.swift Rename all Swiftfin files to lowercase jellypig 2025-10-17 09:28:57 +02:00
LiveVideoPlayerManager.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
ParentalRatingsViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
ProgramsViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
QuickConnectAuthorizeViewModel.swift [iOS] Admin Dashboard - QuickConnect Other User (#1488) 2025-04-14 17:19:32 -04:00
ResetUserPasswordViewModel.swift [Meta] 2025 Disclaimer (#1381) 2025-01-02 16:05:15 -07:00
SearchViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
SelectUserViewModel.swift Implement localization for hardcoded strings (#1510) 2025-05-02 13:04:34 -04:00
ServerCheckViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
ServerConnectionViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
ServerLogsViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
SettingsViewModel.swift [tvOS] App Settings & Splashscreen (#1419) 2025-02-06 20:59:18 -07:00
UserLocalSecurityViewModel.swift Implement localization for hardcoded strings (#1510) 2025-05-02 13:04:34 -04:00
UserProfileImageViewModel.swift Rename all Swiftfin files to lowercase jellypig 2025-10-17 09:28:57 +02:00
UserSignInViewModel.swift Stateful - Set cleanup and `final` classes (#1465) 2025-03-29 23:05:14 -06:00
VideoPlayerViewModel.swift Implement Electronic Program Guide (EPG) for Live TV 2025-10-17 19:23:53 +02:00
ViewModel.swift [Meta] 2025 Disclaimer (#1381) 2025-01-02 16:05:15 -07:00