
    Xj]                        d dl mZ d dlZd dlmZmZmZmZmZ d dl	m
Z
mZmZmZ d dlmZ erd dlmZ ddlmZ  G d	 d
      Zy)    )annotationsN)TYPE_CHECKINGAnyDictListOptional)ExecutingContextManagerOperationContextManagerParsingContextManagerValidationContextManager)await_maybe)ExecutionContext   )SchemaExtensionc                  ^    e Zd ZU ded<   	 d	 	 	 	 	 ddZddZddZddZddZdd	Z	dd
Z
y)SchemaExtensionsRunnerzList[SchemaExtension]
extensionsNc                (    || _         |xs g | _        y N)execution_contextr   )selfr   r   s      i/var/www/html/myl_app/scheduler-service/venv/lib/python3.12/site-packages/strawberry/extensions/runner.py__init__zSchemaExtensionsRunner.__init__   s    
 "3$*    c                ,    t        | j                        S r   )r
   r   r   s    r   	operationz SchemaExtensionsRunner.operation       &t77r   c                ,    t        | j                        S r   )r   r   r   s    r   
validationz!SchemaExtensionsRunner.validation"   s    '88r   c                ,    t        | j                        S r   )r   r   r   s    r   parsingzSchemaExtensionsRunner.parsing%   s    $T__55r   c                ,    t        | j                        S r   )r	   r   r   s    r   	executingz SchemaExtensionsRunner.executing(   r   r   c                    i }| j                   D ]M  }t        j                  |j                        rd}t	        |      |j                  |j                                O |S )Nz5Cannot use async extension hook during sync execution)r   inspectiscoroutinefunctionget_resultsRuntimeErrorupdate)r   data	extensionmsgs       r   get_extensions_results_syncz2SchemaExtensionsRunner.get_extensions_results_sync+   sZ    ! 	1I**9+@+@AM"3''KK	--/0		1 r   c                   K   i }| j                   D ]2  }|j                  t        |j                                d {          4 |j                  |j                         |S 7 'wr   )r   r*   r   r(   extensions_results)r   ctxr+   r,   s       r   get_extensions_resultsz-SchemaExtensionsRunner.get_extensions_results5   s\     ! 	DIKKk)*?*?*ABBC	D 	C**+ Cs   9A%A#
(A%r   )r   r   r   zOptional[List[SchemaExtension]]returnNone)r3   r
   )r3   r   )r3   r   )r3   r	   )r3   Dict[str, Any])r1   r   r3   r5   )__name__
__module____qualname____annotations__r   r   r    r"   r$   r.   r2    r   r   r   r      sL    %%
 7;+++ 4+ 
	+8968r   r   )
__future__r   r&   typingr   r   r   r   r   strawberry.extensions.contextr	   r
   r   r   strawberry.utils.await_mayber   strawberry.typesr    r   r   r:   r   r   <module>rA      s3    "  ; ;  51!( (r   