
    $g:	                    .   U d dl mZ d dlmZ d dlmZmZmZmZm	Z	 d dl
mZmZ erd dlmZ d dlmZ  G d de          Z G d	 d
          Zeeged         f         Zej        j        ej        j        ej        j        ej        j        hZded<   g dZdS )    )annotations)Enum)TYPE_CHECKINGAnyCallableDictSet)AsyncIteratorOrIteratorAwaitableOrValue)GraphQLResolveInfo)ExecutionContextc                      e Zd ZdZdZdZdZdS )LifecycleStep	operation
validationparseresolveN)__name__
__module____qualname__	OPERATION
VALIDATIONPARSERESOLVE     d/var/www/html/netbox-4.1.3/venv/lib/python3.11/site-packages/strawberry/extensions/base_extension.pyr   r      s"        IJEGGGr   r   c                  p    e Zd ZU ded<   ddddZdd
ZddZddZddZddZ	d dZ
ed!d            ZdS )"SchemaExtensionr   execution_contextN)r    ExecutionContext | NonereturnNonec                   d S Nr   )selfr    s     r   __init__zSchemaExtension.__init__   s    sr   AsyncIteratorOrIterator[None]c              #     K   dV  dS )zFCalled before and after a GraphQL operation (query / mutation) starts.Nr   r&   s    r   on_operationzSchemaExtension.on_operation          




r   c              #     K   dV  dS )z,Called before and after the validation step.Nr   r*   s    r   on_validatezSchemaExtension.on_validate#   r,   r   c              #     K   dV  dS )z)Called before and after the parsing step.Nr   r*   s    r   on_parsezSchemaExtension.on_parse)   r,   r   c              #     K   dV  dS )z+Called before and after the execution step.Nr   r*   s    r   
on_executezSchemaExtension.on_execute/   r,   r   _nextr   rootr   infor   argsstrkwargsAwaitableOrValue[object]c                     |||g|R i |S r%   r   )r&   r3   r4   r5   r6   r8   s         r   r   zSchemaExtension.resolve5   s&     uT41$111&111r    AwaitableOrValue[Dict[str, Any]]c                    i S r%   r   r*   s    r   get_resultszSchemaExtension.get_results?   s    	r   boolc                (    | j         t          j         uS )z4Whether the extension implements the resolve method.)r   r   )clss    r   _implements_resolvez#SchemaExtension._implements_resolveB   s     {/"999r   )r    r!   r"   r#   )r"   r(   )r3   r   r4   r   r5   r   r6   r7   r8   r   r"   r9   )r"   r;   )r"   r>   )r   r   r   __annotations__r'   r+   r.   r0   r2   r   r=   classmethodrA   r   r   r   r   r      s         ''''
 ?C                 2 2 2 2    : : : [: : :r   r   NzSet[str]HOOK_METHODS)r   HookrD   r   )
__future__r   enumr   typingr   r   r   r   r	   strawberry.utils.await_mayber
   r   graphqlr   strawberry.typesr   r   r   rE   r+   r   r.   r0   r2   rD   rB   __all__r   r   r   <module>rM      sZ   " " " " " " "       : : : : : : : : : : : : : : R R R R R R R R 2******111111    D   0: 0: 0: 0: 0: 0: 0: 0:f !#:4#@@A  )(%'	     G
F
Fr   