o
    iM                     @   s8   d dl Z ddlmZ ddlmZmZ G dd deZdS )    N   )InfoExtractor   )strip_or_nonetraverse_objc                	   @   s\   e Zd ZdZdZddddddg d	d
dddddddg dd
dgZdZdZdd ZdS )BlerpIEblerpz=https?://(?:www\.)?blerp\.com/soundbites/(?P<id>[0-9a-zA-Z]+)z5https://blerp.com/soundbites/6320fe8745636cb4dd677a5a6320fe8745636cb4dd677a5az0Samsung Galaxy S8 Over the Horizon Ringtone 2016
luminousaj5fb81e51aa66ae000c395478mp3)samsunggalaxys8zover the horizon2016ringtone)idtitleuploaderuploader_idexttags)url	info_dictz5https://blerp.com/soundbites/5bc94ef4796001000498429f5bc94ef4796001000498429fYee1796173226783539205ba99cf71386730004552c42)YEEYEETzwo ha haah catchy tune yeeyeewebBitePageGetBiteai	  query webBitePageGetBite($_id: MongoID!) {
            web {
                biteById(_id: $_id) {
                    ...bitePageFrag
                    __typename
                }
                __typename
            }
        }

        fragment bitePageFrag on Bite {
            _id
            title
            userKeywords
            keywords
            color
            visibility
            isPremium
            owned
            price
            extraReview
            isAudioExists
            image {
                filename
                original {
                    url
                    __typename
                }
                __typename
            }
            userReactions {
                _id
                reactions
                createdAt
                __typename
            }
            topReactions
            totalSaveCount
            saved
            blerpLibraryType
            license
            licenseMetaData
            playCount
            totalShareCount
            totalFavoriteCount
            totalAddedToBoardCount
            userCategory
            userAudioQuality
            audioCreationState
            transcription
            userTranscription
            description
            createdAt
            updatedAt
            author
            listingType
            ownerObject {
                _id
                username
                profileImage {
                    filename
                    original {
                        url
                        __typename
                    }
                    __typename
                }
                __typename
            }
            transcription
            favorited
            visibility
            isCurated
            sourceUrl
            audienceRating
            strictAudienceRating
            ownerId
            reportObject {
                reportedContentStatus
                __typename
            }
            giphy {
                mp4
                gif
                __typename
            }
            audio {
                filename
                original {
                    url
                    __typename
                }
                mp3 {
                    url
                    __typename
                }
                __typename
            }
            __typename
        }

        c                 C   s   |  |}| j| jd|id}ddi}| jd|t| |d}|d d d	 }|d |d
 d d |d t|dtdt|dtddt	t
d ttt|dt	dpPg pTd dS )N_id)operationNamequery	variableszContent-Typezapplication/jsonzhttps://api.blerp.com/graphql)dataheadersr&   webbiteByIdaudior   r   r   )ownerObjectusername)expected_type)r+   r"   userKeywords)r   r   r   r   r   r   r   )	_match_id_GRAPHQL_OPERATIONNAME_GRAPHQL_QUERY_download_jsonjsondumpsencoder   r   listfiltermap)selfr   audio_idr&   r'   json_result	bite_json r=   J/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/blerp.py_real_extract   s*   
	$zBlerpIE._real_extractN)	__name__
__module____qualname__IE_NAME
_VALID_URL_TESTSr0   r1   r?   r=   r=   r=   r>   r      s4    hr   )r3   commonr   utilsr   r   r   r=   r=   r=   r>   <module>   s    