PlayableItem class abstract

Common interface for anything that can be played, displayed in a queue, or shown in a shelf/card.

Both AppReleaseItem (internal content) and AppMediaItem (external sources) implement this. The audio player, queue, and UI components work with PlayableItem instead of checking which concrete type they have.

This eliminates the need for AppMediaItemMapper for internal content and removes all the if (item is AppReleaseItem) ... else if (item is AppMediaItem) checks.

Implementers

Constructors

PlayableItem()

Properties

categories List<String>?
no setter
description String?
no setter
displayDuration String
no setter
duration int
no setter
galleryUrls List<String>?
no setter
hashCode int
The hash code for this object.
no setterinherited
id String
no setter
imgUrl String
no setter
isAudioContent bool
no setter
isBookContent bool
no setter
isInternal bool
Whether this item is from the platform (AppReleaseItem) or from an external source (AppMediaItem from Spotify, YouTube, etc.)
no setter
language String?
no setter
mediaType MediaItemType?
no setter
name String
no setter
ownerId String?
no setter
ownerName String
no setter
previewUrl String
no setter
publishedYear int?
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
slug String
no setter
state int
no setter
streamUrl String
no setter

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited