
    ]jM                         d dl Z d dlmZmZmZ d dlmZ  G d deee j                  f   e j                  e         Z	 G d deee j                  f   e j                  e         Z
y)    N)	SyncPager
AsyncPagerT)ApiErrorc                   X     e Zd Zededdfd       Zdej                  e   f fdZ	 xZ
S )SyncPagerExt
sync_pagerreturnzSyncPagerExt[T]c                 j     | |j                   |j                  |j                  |j                        S Nget_nexthas_nextitemsresponser   )clsr	   s     P/root/env/lib/python3.12/site-packages/label_studio_sdk/_extensions/pager_ext.pyfrom_sync_pagerzSyncPagerExt.from_sync_pager   s5     ((((""((	
 	
    c              #      K   	 t         |          D ]  }|  y # t        $ r}|j                  dk(  rY d }~y  d }~ww xY wwNi  )super__iter__r   status_codeselfitemexc	__class__s      r   r   zSyncPagerExt.__iter__   sI     	(* 
 	#%	s+   A A	A ;A;A  A)__name__
__module____qualname__classmethodr   r   typingIteratorr   r   __classcell__r   s   @r   r   r   
   s>    
 
7H 
 
&//!,  r   r   c                   h     e Zd Zededdfd       Zdej                  e   f fdZ	def fdZ
 xZS )AsyncPagerExtasync_pagerr
   zAsyncPagerExt[T]c                 r   K    | |j                   |j                  |j                  |j                        S wr   r   )r   r*   s     r   from_async_pagerzAsyncPagerExt.from_async_pager"   s7      )) ))## ))	
 	
s   57c                   K   	 t         |          2 3 d {   }| 7 
6 y # t        $ r}|j                  dk(  rY d }~y  d }~ww xY wwr   )r   	__aiter__r   r   r   s      r   r.   zAsyncPagerExt.__aiter__+   sR     	#g/1  d
1 	#%	sG   A& $"$& $& A	A	AAAA		Ac                    K   	 t         |           d {   S 7 # t        $ r}|j                  dk(  rt         d }~ww xY wwr   )r   	__anext__r   r   StopAsyncIteration)r   r   r   s     r   r0   zAsyncPagerExt.__anext__5   sD     	*,,,, 	#%((	s.   A  A 	A<AA)r    r!   r"   r#   r   r,   r$   AsyncIteratorr   r.   r0   r&   r'   s   @r   r)   r)   !   sL    
 
@R 
 
!5!5a!8   r   r)   )r$    label_studio_sdk.core.paginationr   r   r   label_studio_sdk.core.api_errorr   AnyGenericr   r)    r   r   <module>r8      sY     E E 49Q

]+V^^A-> .Jq&**}-v~~a/@ r   