
    <%iY                     "    d dl mZ defdZd Zy)    )import_stringpathc                        G  fdd      }|S )zK simulate initiated object but actually load class and init on first usage c                   J    e Zd Zd Z fdZed        Zed        Zd Zd Z	y)'lazy_serializer.<locals>.LazySerializerc                 0    ||d c| _         | _        | _        y N)	lazy_argslazy_kwargslazy_obj)selfargskwargss      O/usr/local/footviz/venv/lib/python3.12/site-packages/drf_spectacular/helpers.py__init__z0lazy_serializer.<locals>.LazySerializer.__init__   s    >BFD;DND,dm    c                     | j                   s* t              | j                  i | j                  | _         t	        | j                   |      S r	   )r   r   r
   r   getattr)r   itemr   s     r   __getattr__z3lazy_serializer.<locals>.LazySerializer.__getattr__   s=    == 3d 3T^^ XtGWGW X4==$//r   c                 $    | j                  d      S )N	__class__r   r   s    r   r   z1lazy_serializer.<locals>.LazySerializer.__class__   s    ##K00r   c                 $    | j                  d      S )N__dict__r   r   s    r   r   z0lazy_serializer.<locals>.LazySerializer.__dict__   s    ##J//r   c                 .     | j                  d             S )N__str__r   r   s    r   r   z/lazy_serializer.<locals>.LazySerializer.__str__   s    .4##I.00r   c                 .     | j                  d             S )N__repr__r   r   s    r   r    z0lazy_serializer.<locals>.LazySerializer.__repr__   s    /4##J/11r   N)
__name__
__module____qualname__r   r   propertyr   r   r   r    )r   s   r   LazySerializerr      s@    	Q	0
 
	1 
	1 
	0 
	0	1	2r   r%    )r   r%   s   ` r   lazy_serializerr'      s    2 2. r   c                     ddl m} ddlm} t	        | j
                  | fi       }  |d      |        ||dd       |S )Nr   )set_override)extend_schema_serializerF)manysuppress_collision_warningT)drf_spectacular.drainager)   drf_spectacular.utilsr*   typer!   )serializer_classr)   r*   patched_serializer_classs       r   forced_singular_serializerr2   !   sH    5>#$4$=$=@P?RTVW(%()AB)+GN##r   N)django.utils.module_loadingr   strr'   r2   r&   r   r   <module>r5      s    5# :	$r   