Add lib
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import List, Optional
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from shazamio.schemas.attributes import AttributeName
|
||||
from shazamio.schemas.base import BaseHrefNextData
|
||||
from shazamio.schemas.base import BaseIdTypeHref
|
||||
from shazamio.schemas.photos import ImageModel
|
||||
|
||||
|
||||
class EditorialArtwork(BaseModel):
|
||||
centered_fullscreen_background: Optional[ImageModel] = Field(
|
||||
None, alias="centeredFullscreenBackground"
|
||||
)
|
||||
subscription_hero: Optional[ImageModel] = Field(None, alias="subscriptionHero")
|
||||
banner_uber: Optional[ImageModel] = Field(None, alias="bannerUber")
|
||||
|
||||
|
||||
class Attributes(BaseModel):
|
||||
genre_names: List[str] = Field(..., alias="genreNames")
|
||||
editorial_artwork: EditorialArtwork = Field(..., alias="editorialArtwork")
|
||||
name: str
|
||||
artwork: ImageModel
|
||||
url: str
|
||||
origin: Optional[str] = None
|
||||
artist_bio: Optional[str] = Field(None, alias="artistBio")
|
||||
|
||||
|
||||
class Relationships(BaseModel):
|
||||
albums: BaseHrefNextData[List[BaseIdTypeHref]]
|
||||
|
||||
|
||||
class Datum(BaseModel):
|
||||
id: str
|
||||
type: str
|
||||
href: str
|
||||
attributes: Attributes
|
||||
relationships: Relationships
|
||||
|
||||
|
||||
class SimularArtist(BaseModel):
|
||||
href: Optional[str] = None
|
||||
next: Optional[str] = None
|
||||
attributes: Optional[AttributeName] = None
|
||||
data: Optional[List[Datum]] = None
|
||||
Reference in New Issue
Block a user