
     i
                        d dl mZ d dl mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d d	lmZ d d
lmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ e G d d                      Ze G d d                      Ze G d d                      Ze G d d                      Z  G d de          Z! G d de          Z" G d de          Z# G d  d!e          Z$ G d" d#e          Z%d$S )%    )	dataclass)field)List)Optional)Union)	BaseModel)Field)BaseIdTypeHref)FullAlbumsModel)LastReleaseModel)SimularArtist)TopMusicVideosView)TopSong)ArtistAttribute)ArtistExtend)
ArtistView)
ErrorModelc                      e Zd ZU eed<   ee         ed<    ee          Z	ee
e                  ed<   dZee         ed<   dZee         ed<   dZeeeef                  ed<   dZee         ed	<   d
Zee         ed<   d Zdee         fdZdS )
ArtistInfonameverifieddefault_factorygenresNaliasgenres_primaryavataradam_id urlc                 8    |                                  | _        d S )N)_ArtistInfo__optional_avatarr   selfs    `/root/.openclaw/workspace/.venvs/songid/lib/python3.11/site-packages/shazamio/schemas/artists.py__post_init__zArtistInfo.__post_init__!   s    ,,..    returnc                     | j         d S d| j         v r| j                             d          S d                    | j                   S )Ndefaultr   )r   getjoinr#   s    r%   __optional_avatarzArtistInfo.__optional_avatar$   sD    ;4$+%%;??9---774;'''r'   )__name__
__module____qualname__str__annotations__r   boolr   listr   r   r   r   r   r   dictr   intr    r&   r"    r'   r%   r   r      s         
IIItn"'%"="="=FHT#Y===E8C=$(NHSM((()-FHU49%&---!GXc]!!!C#/ / /(8C= ( ( ( ( ( (r'   r   c                       e Zd ZU eed<   dS )ArtistV2artistN)r.   r/   r0   r   r2   r7   r'   r%   r9   r9   -   s         r'   r9   c                   l    e Zd ZU  ee          Zee         ed<    ee          Z	ee
         ed<   dS )ArtistQueryr   viewsextendN)r.   r/   r0   r   r4   r=   r   r   r2   r>   r   r7   r'   r%   r<   r<   2   sV         #eD999E4
999!&t!<!<!<FD<<<<<r'   r<   c                   R    e Zd ZU eed<   eed<   eed<   edededefd            ZdS )ArtistAvatarwidthheightr    r(   c                 :    | j                             ||          S )N)wh)r    format)clsrB   rA   s      r%   url_with_sizezArtistAvatar.url_with_size>   s    w~~~000r'   N)r.   r/   r0   r6   r2   r1   classmethodrH   r7   r'   r%   r@   r@   8   sd         JJJKKK	HHH13 1s 1s 1 1 1 [1 1 1r'   r@   c                   J    e Zd ZU eed<   dZee         ed<   ee         ed<   dS )AlbumRelationshiphrefNnextdata)	r.   r/   r0   r1   r2   rM   r   r   r
   r7   r'   r%   rK   rK   C   s@         
IIID(3-
~
r'   rK   c                       e Zd ZU eed<   dS )ArtistRelationshipsalbumsN)r.   r/   r0   rK   r2   r7   r'   r%   rP   rP   I   s         r'   rP   c                       e Zd ZU  edd          Zee         ed<    edd          Zee	         ed<    edd          Z
ee         ed<    edd	          Zee         ed
<    edd          Zee         ed<   dS )ArtistViewsNztop-music-videos)r   top_music_videoszsimilar-artistssimular_artistszlatest-releaselatest_releasezfull-albumsfull_albumsz	top-songs	top_songs)r.   r/   r0   r	   rT   r   r   r2   rU   r   rV   r   rW   r   rX   r   r7   r'   r%   rS   rS   M   s         5:U4GY5Z5Z5Zh12ZZZ/4uTAR/S/S/SOXm,SSS16tCS1T1T1TNH-.TTT-2U4}-M-M-MK/*MMM#(5[#A#A#AIx AAAAAr'   rS   c                   B    e Zd ZU eed<   eed<   eed<   eed<   eed<   dS )ArtistV3idtype
attributesrelationshipsr=   N)r.   r/   r0   r1   r2   r   rP   rS   r7   r'   r%   rZ   rZ   U   sH         GGG
III&&&&r'   rZ   c                   D    e Zd ZU g Zee         ed<   g Zee         ed<   dS )ArtistResponseerrorsrN   N)	r.   r/   r0   ra   r   r   r2   rN   rZ   r7   r'   r%   r`   r`   ]   s;         !FD!!!D$x.r'   r`   N)&dataclassesr   r   typingr   r   r   pydanticr   r	   shazamio.schemas.baser
   )shazamio.schemas.artist.views.full_albumsr   *shazamio.schemas.artist.views.last_releaser   -shazamio.schemas.artist.views.simular_artistsr   'shazamio.schemas.artist.views.top_musicr   &shazamio.schemas.artist.views.top_songr   shazamio.schemas.attributesr   shazamio.schemas.enumsr   r   shazamio.schemas.errorsr   r   r9   r<   r@   rK   rP   rS   rZ   r`   r7   r'   r%   <module>rn      s   ! ! ! ! ! !                                     0 0 0 0 0 0 E E E E E E G G G G G G G G G G G G F F F F F F : : : : : : 7 7 7 7 7 7 / / / / / / - - - - - - . . . . . . ( ( ( ( ( ( ( (,         = = = = = = = =
 1 1 1 1 1 1 1 1    	       )   B B B B B) B B B    y       Y     r'   