Implemented offline search

This commit is contained in:
Sumner Evans
2019-12-29 11:39:44 -07:00
parent 633315e186
commit 8af26602a2
5 changed files with 352 additions and 204 deletions

View File

@@ -1,8 +1,8 @@
"""
WARNING: AUTOGENERATED FILE
This file was generated by the api_object_generator.py script. Do
not modify this file directly, rather modify the script or run it on
a new API version.
This file was generated by the api_object_generator.py
script. Do not modify this file directly, rather modify the
script or run it on a new API version.
"""
from datetime import datetime
@@ -70,6 +70,12 @@ class Child(APIObject):
originalWidth: int
originalHeight: int
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Child.{self.id}')
class AlbumList(APIObject):
album: List[Child]
@@ -91,6 +97,12 @@ class AlbumID3(APIObject):
year: int
genre: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'AlbumID3.{self.id}')
class AlbumList2(APIObject):
album: List[AlbumID3]
@@ -113,6 +125,12 @@ class AlbumWithSongsID3(APIObject):
year: int
genre: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'AlbumID3.{self.id}')
class Artist(APIObject):
id: str
@@ -123,6 +141,12 @@ class Artist(APIObject):
userRating: UserRating
averageRating: AverageRating
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Artist.{self.id}')
class ArtistInfoBase(APIObject):
biography: List[str]
@@ -154,6 +178,12 @@ class ArtistID3(APIObject):
albumCount: int
starred: datetime
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'ArtistID3.{self.id}')
class ArtistInfo2(APIObject):
similarArtist: List[ArtistID3]
@@ -176,6 +206,12 @@ class ArtistWithAlbumsID3(APIObject):
albumCount: int
starred: datetime
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'ArtistID3.{self.id}')
class IndexID3(APIObject):
artist: List[ArtistID3]
@@ -227,6 +263,12 @@ class Directory(APIObject):
averageRating: AverageRating
playCount: int
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Directory.{self.id}')
class Error(APIObject):
code: int
@@ -267,6 +309,12 @@ class InternetRadioStation(APIObject):
streamUrl: str
homePageUrl: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'InternetRadioStation.{self.id}')
class InternetRadioStations(APIObject):
internetRadioStation: List[InternetRadioStation]
@@ -309,6 +357,12 @@ class MusicFolder(APIObject):
value: str
name: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'MusicFolder.{self.id}')
class MusicFolders(APIObject):
musicFolder: List[MusicFolder]
@@ -363,6 +417,12 @@ class PodcastEpisode(APIObject):
originalWidth: int
originalHeight: int
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Child.{self.id}')
class NewestPodcasts(APIObject):
episode: List[PodcastEpisode]
@@ -407,6 +467,12 @@ class NowPlayingEntry(APIObject):
originalWidth: int
originalHeight: int
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Child.{self.id}')
class NowPlaying(APIObject):
entry: List[NowPlayingEntry]
@@ -437,6 +503,12 @@ class Playlist(APIObject):
changed: datetime
coverArt: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Playlist.{self.id}')
class PlaylistWithSongs(APIObject):
entry: List[Child]
@@ -453,6 +525,12 @@ class PlaylistWithSongs(APIObject):
changed: datetime
coverArt: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Playlist.{self.id}')
class Playlists(APIObject):
playlist: List[Playlist]
@@ -471,6 +549,12 @@ class PodcastChannel(APIObject):
status: PodcastStatus
errorMessage: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'PodcastChannel.{self.id}')
class Podcasts(APIObject):
channel: List[PodcastChannel]
@@ -521,6 +605,12 @@ class Share(APIObject):
lastVisited: datetime
visitCount: int
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Share.{self.id}')
class Shares(APIObject):
share: List[Share]
@@ -598,12 +688,24 @@ class AudioTrack(APIObject):
name: str
languageCode: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'AudioTrack.{self.id}')
class Captions(APIObject):
id: str
value: str
name: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'Captions.{self.id}')
class VideoConversion(APIObject):
id: str
@@ -611,6 +713,12 @@ class VideoConversion(APIObject):
bitRate: int
audioTrackId: int
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'VideoConversion.{self.id}')
class VideoInfo(APIObject):
captions: List[Captions]
@@ -619,6 +727,12 @@ class VideoInfo(APIObject):
value: str
id: str
def __eq__(self, other):
return hash(self) == hash(other)
def __hash__(self):
return hash(f'VideoInfo.{self.id}')
class Videos(APIObject):
video: List[Child]