Persistence for queue, history and last played

This commit is contained in:
Arkadiusz Fal
2021-10-24 20:01:08 +02:00
parent 68b5abd122
commit 19bb4955a2
13 changed files with 330 additions and 118 deletions

View File

@@ -1,14 +1,19 @@
import AVFoundation
import Defaults
import Foundation
struct PlayerQueueItem: Hashable, Identifiable {
struct PlayerQueueItem: Hashable, Identifiable, Defaults.Serializable {
static let bridge = PlayerQueueItemBridge()
var id = UUID()
var video: Video
var video: Video!
var videoID: Video.ID
var playbackTime: CMTime?
var videoDuration: TimeInterval?
init(_ video: Video, playbackTime: CMTime? = nil, videoDuration: TimeInterval? = nil) {
init(_ video: Video? = nil, videoID: Video.ID? = nil, playbackTime: CMTime? = nil, videoDuration: TimeInterval? = nil) {
self.video = video
self.videoID = videoID ?? video!.videoID
self.playbackTime = playbackTime
self.videoDuration = videoDuration
}