
    Ѯh                         d dl mZ d dlmZ d dlmZmZ g dZddlm	Z	 ddl
mZ ddlmZ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mZ 	 	 ddddddee   dee	   dee   dee   dee   dee   defdZy)    )Iterable)islice)AnyOptional)LimitOffsetPageLimitOffsetParamsPageParamspaginate   )AbstractParams)Config)	flow_exprrun_sync_flow)generic_flow)OptionalLimitOffsetPage)OptionalLimitOffsetParams)OptionalPage)OptionalParams)AdditionalDataSyncItemsTransformerN)transformeradditional_dataconfigiterableparamstotalr   r   r   returnc          
      j     t        t        t         fd      t        fd      ||||            S )Nc                     g t        | j                         j                  | j                         j                        S N)r   as_slicestartstop)rr   s    n/home/www/academy-backend.kofcorporation.com/venv/lib/python3.12/site-packages/fastapi_pagination/iterables.py<lambda>zpaginate.<locals>.<lambda>$   s8      

**

))     c                       S r!    )r   s   r&   r'   zpaginate.<locals>.<lambda>,   s     r(   )limit_offset_flow
total_flowr   r   r   r   )r   r   r   )r   r   r   r   r   r   s   ` `   r&   r   r      s=     ' !/#+	
 r(   )NN)collections.abcr   	itertoolsr   typingr   r   __all__basesr   r   r   flowr   r   flowsr   optionalr   r   r   r   r   r	   r   r
   typesr   r   intr   r*   r(   r&   <module>r7      s    $    "  *  @ D * . 7
 (,
 3704#sm^$ C=
 ./ n- V 	r(   