o
    -˜Žj#  ã                   @   sH   d dl Z d dlmZmZ d dlZd dlmZ e  e¡ZG dd„ dƒZ	dS )é    N)ÚUnionÚList)Útypesc                	   @   s2   e Zd Zdddeeef deded fdd„Zd	S )
ÚGetMediaGroupÚselfzpyrogram.ClientÚchat_idÚ
message_idÚreturnztypes.Messagec                 ƒ   sŒ   �|dkr	t dƒ‚| j|dd„ t|d |d ƒD ƒdd�I dH }t|ƒd	kr+|d jn||d
  j‰ ˆ du r:t dƒ‚t ‡ fdd„|D ƒ¡S )aá  Get the media group a message belongs to.

        .. include:: /_includes/usable-by/users-bots.rst

        Parameters:
            chat_id (``int`` | ``str``):
                Unique identifier (int) or username (str) of the target chat.
                For your personal cloud (Saved Messages) you can simply use "me" or "self".
                For a contact that exists in your Telegram address book you can use his phone number (str).
                You can also use chat public link in form of *t.me/<username>* (str).

            message_id (``int``):
                The id of one of the messages that belong to the media group.
                
        Returns:
            List of :obj:`~pyrogram.types.Message`: On success, a list of messages of the media group is returned.
            
        Raises:
            ValueError: 
                In case the passed message_id is negative or equal 0. 
                In case target message doesn't belong to a media group.
        r   z/Passed message_id is negative or equal to zero.c                 S   s   g | ]}|‘qS © r
   )Ú.0Úmsg_idr
   r
   úf/var/www/kodo/Anonymous/send/lib/python3.10/site-packages/pyrogram/methods/messages/get_media_group.pyÚ
<listcomp>@   s    z1GetMediaGroup.get_media_group.<locals>.<listcomp>é	   é
   )r   Úmessage_idsÚrepliesNé   é   z+The message doesn't belong to a media groupc                 3   s   � | ]
}|j ˆ kr|V  qd S )N©Úmedia_group_id)r   Úmsgr   r
   r   Ú	<genexpr>K   s   € z0GetMediaGroup.get_media_group.<locals>.<genexpr>)Ú
ValueErrorÚget_messagesÚrangeÚlenr   r   r   )r   r   r   Úmessagesr
   r   r   Úget_media_group   s   €ý$zGetMediaGroup.get_media_groupN)Ú__name__Ú
__module__Ú__qualname__r   ÚintÚstrr   r   r
   r
   r
   r   r      s    ÿ
þýür   )
ÚloggingÚtypingr   r   Úpyrogramr   Ú	getLoggerr   Úlogr   r
   r
   r
   r   Ú<module>   s   
