parent
1ce370a773
commit
af2a3193bc
@ -0,0 +1,134 @@ |
|||||||
|
from __future__ import annotations |
||||||
|
|
||||||
|
from typing import List, Optional |
||||||
|
|
||||||
|
from pydantic import BaseModel |
||||||
|
|
||||||
|
|
||||||
|
class Description(BaseModel): |
||||||
|
standard: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Artwork(BaseModel): |
||||||
|
width: Optional[int] = None |
||||||
|
height: Optional[int] = None |
||||||
|
url: Optional[str] = None |
||||||
|
hasP3: Optional[bool] = None |
||||||
|
|
||||||
|
|
||||||
|
class PlayParams(BaseModel): |
||||||
|
id: Optional[str] = None |
||||||
|
kind: Optional[str] = None |
||||||
|
versionHash: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Attributes(BaseModel): |
||||||
|
hasCollaboration: Optional[bool] = None |
||||||
|
curatorName: Optional[str] = None |
||||||
|
lastModifiedDate: Optional[str] = None |
||||||
|
audioTraits: List |
||||||
|
name: Optional[str] = None |
||||||
|
isChart: Optional[bool] = None |
||||||
|
supportsSing: Optional[bool] = None |
||||||
|
playlistType: Optional[str] = None |
||||||
|
description: Optional[Description] = None |
||||||
|
artwork: Optional[Artwork] = None |
||||||
|
playParams: PlayParams |
||||||
|
url: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Datum1(BaseModel): |
||||||
|
id: Optional[str] = None |
||||||
|
type: Optional[str] = None |
||||||
|
href: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Curator(BaseModel): |
||||||
|
href: Optional[str] = None |
||||||
|
data: List[Datum1] |
||||||
|
|
||||||
|
|
||||||
|
class Artwork1(BaseModel): |
||||||
|
width: Optional[int] = None |
||||||
|
url: Optional[str] = None |
||||||
|
height: Optional[int] = None |
||||||
|
textColor3: Optional[str] = None |
||||||
|
textColor2: Optional[str] = None |
||||||
|
textColor4: Optional[str] = None |
||||||
|
textColor1: Optional[str] = None |
||||||
|
bgColor: Optional[str] = None |
||||||
|
hasP3: Optional[bool] = None |
||||||
|
|
||||||
|
|
||||||
|
class PlayParams1(BaseModel): |
||||||
|
id: Optional[str] = None |
||||||
|
kind: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Preview(BaseModel): |
||||||
|
url: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Attributes1(BaseModel): |
||||||
|
albumName: Optional[str] = None |
||||||
|
hasTimeSyncedLyrics: Optional[bool] = None |
||||||
|
genreNames: List[str] |
||||||
|
trackNumber: Optional[int] = None |
||||||
|
releaseDate: Optional[str] = None |
||||||
|
durationInMillis: Optional[int] = None |
||||||
|
isVocalAttenuationAllowed: Optional[bool] = None |
||||||
|
isMasteredForItunes: Optional[bool] = None |
||||||
|
isrc: Optional[str] = None |
||||||
|
artwork: Artwork1 |
||||||
|
composerName: Optional[str] = None |
||||||
|
audioLocale: Optional[str] = None |
||||||
|
url: Optional[str] = None |
||||||
|
playParams: PlayParams1 |
||||||
|
discNumber: Optional[int] = None |
||||||
|
hasCredits: Optional[bool] = None |
||||||
|
isAppleDigitalMaster: Optional[bool] = None |
||||||
|
hasLyrics: Optional[bool] = None |
||||||
|
audioTraits: List[str] |
||||||
|
name: Optional[str] = None |
||||||
|
previews: List[Preview] |
||||||
|
artistName: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class ContentVersion(BaseModel): |
||||||
|
RTCI: Optional[int] = None |
||||||
|
MZ_INDEXER: Optional[int] = None |
||||||
|
|
||||||
|
|
||||||
|
class Meta(BaseModel): |
||||||
|
contentVersion: ContentVersion |
||||||
|
|
||||||
|
|
||||||
|
class Datum2(BaseModel): |
||||||
|
id: Optional[str] = None |
||||||
|
type: Optional[str] = None |
||||||
|
href: Optional[str] = None |
||||||
|
attributes: Attributes1 |
||||||
|
meta: Meta |
||||||
|
|
||||||
|
|
||||||
|
class Tracks(BaseModel): |
||||||
|
href: Optional[str] = None |
||||||
|
next: Optional[str] = None |
||||||
|
data: List[Datum2] |
||||||
|
|
||||||
|
|
||||||
|
class Relationships(BaseModel): |
||||||
|
curator: Curator |
||||||
|
tracks: Tracks |
||||||
|
|
||||||
|
|
||||||
|
class Datum(BaseModel): |
||||||
|
id: Optional[str] = None |
||||||
|
type: Optional[str] = None |
||||||
|
href: Optional[str] = None |
||||||
|
attributes: Attributes |
||||||
|
relationships: Relationships |
||||||
|
|
||||||
|
|
||||||
|
class PlaylistInfo(BaseModel): |
||||||
|
data: List[Datum] |
@ -0,0 +1,73 @@ |
|||||||
|
from __future__ import annotations |
||||||
|
|
||||||
|
from typing import List, Optional |
||||||
|
|
||||||
|
from pydantic import BaseModel |
||||||
|
|
||||||
|
|
||||||
|
class Artwork(BaseModel): |
||||||
|
width: Optional[int] = None |
||||||
|
url: Optional[str] = None |
||||||
|
height: Optional[int] = None |
||||||
|
textColor3: Optional[str] = None |
||||||
|
textColor2: Optional[str] = None |
||||||
|
textColor4: Optional[str] = None |
||||||
|
textColor1: Optional[str] = None |
||||||
|
bgColor: Optional[str] = None |
||||||
|
hasP3: Optional[bool] = None |
||||||
|
|
||||||
|
|
||||||
|
class PlayParams(BaseModel): |
||||||
|
id: Optional[str] = None |
||||||
|
kind: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Preview(BaseModel): |
||||||
|
url: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class Attributes(BaseModel): |
||||||
|
albumName: Optional[str] = None |
||||||
|
hasTimeSyncedLyrics: Optional[bool] = None |
||||||
|
genreNames: List[str] |
||||||
|
trackNumber: Optional[int] = None |
||||||
|
releaseDate: Optional[str] = None |
||||||
|
durationInMillis: Optional[int] = None |
||||||
|
isVocalAttenuationAllowed: Optional[bool] = None |
||||||
|
isMasteredForItunes: Optional[bool] = None |
||||||
|
isrc: Optional[str] = None |
||||||
|
artwork: Artwork |
||||||
|
audioLocale: Optional[str] = None |
||||||
|
composerName: Optional[str] = None |
||||||
|
url: Optional[str] = None |
||||||
|
playParams: PlayParams |
||||||
|
discNumber: Optional[int] = None |
||||||
|
hasCredits: Optional[bool] = None |
||||||
|
isAppleDigitalMaster: Optional[bool] = None |
||||||
|
hasLyrics: Optional[bool] = None |
||||||
|
audioTraits: List[str] |
||||||
|
name: Optional[str] = None |
||||||
|
previews: List[Preview] |
||||||
|
artistName: Optional[str] = None |
||||||
|
|
||||||
|
|
||||||
|
class ContentVersion(BaseModel): |
||||||
|
RTCI: Optional[int] = None |
||||||
|
MZ_INDEXER: Optional[int] = None |
||||||
|
|
||||||
|
|
||||||
|
class Meta(BaseModel): |
||||||
|
contentVersion: ContentVersion |
||||||
|
|
||||||
|
|
||||||
|
class Datum(BaseModel): |
||||||
|
id: Optional[str] = None |
||||||
|
type: Optional[str] = None |
||||||
|
href: Optional[str] = None |
||||||
|
attributes: Attributes |
||||||
|
meta: Meta |
||||||
|
|
||||||
|
|
||||||
|
class PlaylistTracks(BaseModel): |
||||||
|
next: Optional[str] = None |
||||||
|
data: List[Datum] |
Loading…
Reference in new issue