From eef3ea7f079766990efff3c0385fcfdeae8647a7 Mon Sep 17 00:00:00 2001 From: Lars Noack Date: Fri, 7 Jun 2024 11:15:23 +0200 Subject: [PATCH] feat: removed distracting code --- music_kraken/objects/artwork.py | 40 ++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/music_kraken/objects/artwork.py b/music_kraken/objects/artwork.py index 94396fc..a63129d 100644 --- a/music_kraken/objects/artwork.py +++ b/music_kraken/objects/artwork.py @@ -41,7 +41,7 @@ class Artwork: def search_variant(self, url: str) -> Optional[ArtworkVariant]: if url is None: return None - + for variant in self.variants: if url in variant: return variant @@ -61,6 +61,12 @@ class Artwork: variant.url = url variant.__dict__.update(kwargs) + @property + def url(self) -> Optional[str]: + if len(self.variants) <= 0: + return None + return self.variants[0].url + class ArtworkCollection: """ @@ -123,6 +129,23 @@ class ArtworkCollection: self._data.append(value) return + def __merge__(self, other: ArtworkCollection, **kwargs) -> None: + self.parent_artworks.update(other.parent_artworks) + + for key, value in other._variant_mapping.items(): + if key not in self._variant_mapping: + self._variant_mapping[key] = value + + def __hash__(self) -> int: + return id(self) + + def __iter__(self) -> Generator[Artwork, None, None]: + yield from self._data + + def get_urls(self) -> Generator[str, None, None]: + yield from (artwork.url for artwork in self._data if artwork.url is not None) + + """ @property def flat_empty(self) -> bool: return len(self._variant_mapping.keys()) <= 0 @@ -138,18 +161,5 @@ class ArtworkCollection: def get_variant_name(self, variant: ArtworkVariant) -> str: return f"artwork_{variant['width']}x{variant['height']}_{hash_url(variant['url']).replace('/', '_')}" - - def __merge__(self, other: ArtworkCollection, **kwargs) -> None: - self.parent_artworks.update(other.parent_artworks) - - for key, value in other._variant_mapping.items(): - if key not in self._variant_mapping: - self._variant_mapping[key] = value - - def __hash__(self) -> int: - return id(self) - - def __iter__(self) -> Generator[ArtworkVariant, None, None]: - yield from self._variant_mapping.values() - + """ \ No newline at end of file