Minimal playback

This commit is contained in:
Damontecres 2025-09-22 17:02:32 -04:00
parent 80070f4174
commit 3e7f11c588
No known key found for this signature in database
14 changed files with 405 additions and 12 deletions

View file

@ -8,6 +8,7 @@ import java.util.UUID
sealed interface DolphinModel {
val id: UUID
val name: String?
val type: BaseItemKind
val imageUrl: String?
}

View file

@ -3,6 +3,7 @@ package com.github.damontecres.dolphin.data.model
import org.jellyfin.sdk.api.client.ApiClient
import org.jellyfin.sdk.api.client.extensions.imageApi
import org.jellyfin.sdk.model.api.BaseItemDto
import org.jellyfin.sdk.model.api.BaseItemKind
import org.jellyfin.sdk.model.api.CollectionType
import org.jellyfin.sdk.model.api.ImageType
import java.util.UUID
@ -10,8 +11,9 @@ import java.util.UUID
data class Library(
override val id: UUID,
override val name: String?,
override val type: BaseItemKind,
override val imageUrl: String?,
val type: CollectionType,
val collectionType: CollectionType,
) : DolphinModel {
companion object {
fun fromDto(
@ -21,8 +23,9 @@ data class Library(
Library(
id = dto.id,
name = dto.name,
type = dto.type,
imageUrl = api.imageApi.getItemImageUrl(dto.id, ImageType.PRIMARY),
type = dto.collectionType ?: CollectionType.UNKNOWN,
collectionType = dto.collectionType ?: CollectionType.UNKNOWN,
)
}
}

View file

@ -3,12 +3,14 @@ package com.github.damontecres.dolphin.data.model
import org.jellyfin.sdk.api.client.ApiClient
import org.jellyfin.sdk.api.client.extensions.imageApi
import org.jellyfin.sdk.model.api.BaseItemDto
import org.jellyfin.sdk.model.api.BaseItemKind
import org.jellyfin.sdk.model.api.ImageType
import java.util.UUID
data class Video(
override val id: UUID,
override val name: String?,
override val type: BaseItemKind,
override val imageUrl: String?,
) : DolphinModel {
companion object {
@ -19,6 +21,7 @@ data class Video(
Video(
id = dto.id,
name = dto.name,
type = dto.type,
imageUrl = api.imageApi.getItemImageUrl(dto.id, ImageType.PRIMARY),
)
}