§
    xÅjq  ã                   óZ  — d dl mZ d dlZd dlmZ d dlmZmZmZ 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 n# e$ r  ed	¦  «        ‚w xY wd d
lmZ er(d dlmZ d dlmZmZmZ d dlmZ d dl m!Z! d dl"m#Z# d dl$m%Z%  G d„ de¦  «        Z&d!d„Z'd"d„Z(e	 	 	 	 	 	 	 	 d#d „¦   «         Z)dS )$é    )ÚcontextmanagerN)ÚOP)ÚDidNotEnableÚIntegrationÚ_check_minimum_version)Úshould_send_default_pii)Úhas_span_streaming_enabled)Úcapture_internal_exceptionsÚensure_integration_enabledÚevent_from_exceptionÚhas_data_collection_enabledÚpackage_version)Úschemazgraphene is not installed)ÚTYPE_CHECKING)Ú	Generator)ÚAnyÚDictÚUnion)ÚSource)ÚExecutionResult)ÚGraphQLSchema)ÚEventc                   ó*   — e Zd ZdZedd„¦   «         ZdS )ÚGrapheneIntegrationÚgrapheneÚreturnNc                  ój   — t          d¦  «        } t          t          | ¦  «         t          ¦   «          d S )Nr   )r   r   r   Ú_patch_graphql)Úversions    úQC:\Projects\Historical\venv\Lib\site-packages\sentry_sdk/integrations/graphene.pyÚ
setup_oncezGrapheneIntegration.setup_once%   s2   € å! *Ñ-Ô-ˆÝÕ2°GÑ<Ô<Ð<åÑÔÐÐÐó    ©r   N)Ú__name__Ú
__module__Ú__qualname__Ú
identifierÚstaticmethodr!   © r"   r    r   r   "   s7   € € € € € Ø€Jàðð ð ñ „\ðð ð r"   r   r   c                  óà   ‡‡— t           j        Št           j        Št          t          ‰¦  «        	 	 	 	 	 	 	 	 	 	 dˆfd
„¦   «         } 	 	 	 	 	 	 	 	 	 	 dˆfd„}| t           _        |t           _        d S )Nr   r   ÚsourceúUnion[str, Source]Úargsr   Úkwargsr   r   c           	      óÔ  •— t          j        ¦   «         }|                     t          ¦  «         t	          | ||¦  «        5   ‰
| |g|¢R i |¤Ž}d d d ¦  «         n# 1 swxY w Y   t          ¦   «         5  t          j        ¦   «         }|j        pg D ]?}t          ||j	        t          j        ddœ¬¦  «        \  }}	t          j        ||	¬¦  «         Œ@	 d d d ¦  «         n# 1 swxY w Y   |S ©NF)ÚtypeÚhandled)Úclient_optionsÚ	mechanism)Úhint)Ú
sentry_sdkÚget_isolation_scopeÚadd_event_processorÚ_event_processorÚgraphql_spanr
   Ú
get_clientÚerrorsr   Úoptionsr   r'   Úcapture_event)r   r+   r-   r.   ÚscopeÚresultÚclientÚerrorÚeventr5   Úold_graphql_syncs             €r    Ú_sentry_patched_graphql_syncz4_patch_graphql.<locals>._sentry_patched_graphql_sync1   s£  ø€ õ Ô.Ñ0Ô0ˆØ×!Ò!Õ"2Ñ3Ô3Ð3å˜& &¨&Ñ1Ô1ð 	Gð 	GØ%Ð% f¨fÐF°tÐFÐFÐF¸vÐFÐFˆFð	Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gõ )Ñ*Ô*ð 	;ð 	;ÝÔ*Ñ,Ô,ˆFØœÐ,¨"ð 	;ð 	;�Ý2ØØ#)¤>å 3Ô >Ø#(ðð ðñ ô ‘��tõ Ô(¨°TÐ:Ñ:Ô:Ð:Ð:ð	;ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;ð ˆs%   Á AÁAÁ!AÁ3ACÃC!Ã$C!c           	   Ÿ   ód  •K  — t          j        ¦   «                              t          ¦  «        }|€ ‰| |g|¢R i |¤Žƒ d {V —†S t          j        ¦   «         }|                     t          ¦  «         t          | ||¦  «        5   ‰| |g|¢R i |¤Žƒ d {V —†}d d d ¦  «         n# 1 swxY w Y   t          ¦   «         5  t          j        ¦   «         }|j	        pg D ]?}t          ||j        t          j        ddœ¬¦  «        \  }	}
t          j        |	|
¬¦  «         Œ@	 d d d ¦  «         n# 1 swxY w Y   |S r0   )r6   r;   Úget_integrationr   r7   r8   r9   r:   r
   r<   r   r=   r'   r>   )r   r+   r-   r.   Úintegrationr?   r@   rA   rB   rC   r5   Úold_graphql_asyncs              €r    Ú_sentry_patched_graphql_asyncz5_patch_graphql.<locals>._sentry_patched_graphql_asyncM   s  øè è € õ !Ô+Ñ-Ô-×=Ò=Õ>QÑRÔRˆØÐØ*Ð*¨6°6ÐK¸DÐKÐKÐKÀFÐKÐKÐKÐKÐKÐKÐKÐKÐKåÔ.Ñ0Ô0ˆØ×!Ò!Õ"2Ñ3Ô3Ð3å˜& &¨&Ñ1Ô1ð 	Nð 	NØ,Ð,¨V°VÐM¸dÐMÐMÐMÀfÐMÐMÐMÐMÐMÐMÐMÐMˆFð	Nð 	Nð 	Nñ 	Nô 	Nð 	Nð 	Nð 	Nð 	Nð 	Nð 	Nøøøð 	Nð 	Nð 	Nð 	Nõ )Ñ*Ô*ð 	;ð 	;ÝÔ*Ñ,Ô,ˆFØœÐ,¨"ð 	;ð 	;�Ý2ØØ#)¤>å 3Ô >Ø#(ðð ðñ ô ‘��tõ Ô(¨°TÐ:Ñ:Ô:Ð:Ð:ð	;ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;ð ˆs%   ÂB"Â"B&Â)B&Â;AD%Ä%D)Ä,D))
r   r   r+   r,   r-   r   r.   r   r   r   )Úgraphene_schemaÚgraphql_syncÚgraphqlr   r   )rE   rJ   rI   rD   s     @@r    r   r   -   sß   øø€ Ý&Ô3ÐÝ'Ô/ÐåÕ 3Ð5EÑFÔFðØðà$ðð ðð ð	ð
 
ðð ð ð ð ñ GÔFðð6Øðà$ðð ðð ð	ð
 
ðð ð ð ð ð ð> $@…OÔ Ø;…OÔÐÐr"   rC   r   r5   úDict[str, Any]c                 óÒ  — t          j        ¦   «         j        }t          |¦  «        rc|d         d         d         r|                      di ¦  «        }d|d<   n�|                      di ¦  «                             d¦  «        r	| d         d= n\t          ¦   «         r|                      di ¦  «        }d|d<   n2|                      di ¦  «                             d¦  «        r	| d         d= | S )NÚdata_collectionrM   ÚdocumentÚrequestÚ
api_targetÚdata)r6   r;   r=   r   Ú
setdefaultÚgetr   )rC   r5   r3   Úrequest_infos       r    r9   r9   p   sõ   € ÝÔ*Ñ,Ô,Ô4€Nå" >Ñ2Ô2ð 
%ØÐ+Ô,¨YÔ7¸
ÔCð 	)Ø ×+Ò+¨I°rÑ:Ô:ˆLØ)2ˆL˜Ñ&Ð&Ø�YŠY�y "Ñ%Ô%×)Ò)¨&Ñ1Ô1ð 	)Ø�iÔ  Ð(øÝ	 Ñ	"Ô	"ð %Ø×'Ò'¨	°2Ñ6Ô6ˆØ%.ˆ�\Ñ"Ð"Ø	�Š�9˜bÑ	!Ô	!×	%Ò	% fÑ	-Ô	-ð %Ø�)Ô˜VÐ$à€Lr"   r   r   r+   r,   r.   úGenerator[None, None, None]c              #   óü  K  — |                      d¦  «        pd}d}t          j        }|                     ¦   «                              d¦  «        rd}t          j        }n5|                     ¦   «                              d¦  «        rd}t          j        }t          j        ||dœddœ¬	¦  «         t          j	        ¦   «         j
        }t          |¦  «        }|rŠt          j                             ¦   «         €d V — d S i }t          |¦  «        r|d
         d         d         r||d<   nt          ¦   «         r||d<   t          j                             ||||dœ|¥¬¦  «        }	n´t          j        ||¬¦  «        }	t          |¦  «        r+|d
         d         d         r|	                     d|¦  «         n$t          ¦   «         r|	                     d|¦  «         |	                     d|¦  «         |	                     d|¦  «         |	                     ¦   «          	 d V — |r|	                     ¦   «          d S |	                     d d d ¦  «         d S # |r|	                     ¦   «          w |	                     d d d ¦  «         w xY w)NÚoperation_namez<unknown graphql operation>ÚqueryÚmutationÚsubscription)rZ   Úoperation_typezgraphql.operation)rT   Úcategory)ÚcrumbrP   rM   rQ   zgraphql.document)z	sentry.opúgraphql.operation.nameúgraphql.operation.type)ÚnameÚ
attributes)Úoprc   ra   rb   )rV   r   ÚGRAPHQL_QUERYÚstripÚ
startswithÚGRAPHQL_MUTATIONÚGRAPHQL_SUBSCRIPTIONr6   Úadd_breadcrumbr;   r=   r	   ÚtracesÚget_current_spanr   r   Ú
start_spanÚset_dataÚ	__enter__ÚendÚ__exit__)
r   r+   r.   rZ   r^   re   r3   Úis_span_streaming_enabledÚadditional_attributesÚ_graphql_spans
             r    r:   r:   ‚   sè  è è € ð —Z’ZÐ 0Ñ1Ô1ÐRÐ5R€Nà€NÝ	Ô	€BØ‡|‚|�~„~× Ò  Ñ,Ô,ð %Ø#ˆÝÔ ˆˆØ	�Š‰Œ×	"Ò	" >Ñ	2Ô	2ð %Ø'ˆÝÔ$ˆåÔð #1Ø"0ðð ð ,ð
ð 
ðñ ô ð õ  Ô*Ñ,Ô,Ô4€NÝ :¸>Ñ JÔ JÐà ð !"ÝÔ×-Ò-Ñ/Ô/Ð7ØˆEˆEˆEØˆFà "ÐÝ& ~Ñ6Ô6ð 	?ØÐ/Ô0°Ô;¸JÔGð CØ<BÐ%Ð&8Ñ9øÝ$Ñ&Ô&ð 	?Ø8>Ð!Ð"4Ñ5å"Ô)×4Ò4ØàØ*8Ø*8ðð ð (ð	ð 5ñ 
ô 
ˆˆõ #Ô-°¸.ÐIÑIÔIˆå& ~Ñ6Ô6ð 	?ØÐ/Ô0°Ô;¸JÔGð CØ×&Ò&Ð'9¸6ÑBÔBÐBøÝ$Ñ&Ô&ð 	?Ø×"Ò"Ð#5°vÑ>Ô>Ð>à×ÒÐ7¸ÑHÔHÐHØ×ÒÐ7¸ÑHÔHÐHà×ÒÑ!Ô!Ð!ð5Øˆˆˆà$ð 	5Ø×ÒÑÔÐÐÐà×"Ò" 4¨¨tÑ4Ô4Ð4Ð4Ð4øð %ð 	5Ø×ÒÑÔÐÐà×"Ò" 4¨¨tÑ4Ô4Ð4Ð4øøøs   ÈI É0I;r#   )rC   r   r5   rN   r   r   )r   r   r+   r,   r.   rN   r   rX   )*Ú
contextlibr   r6   Úsentry_sdk.constsr   Úsentry_sdk.integrationsr   r   r   Úsentry_sdk.scoper   Úsentry_sdk.tracing_utilsr	   Úsentry_sdk.utilsr
   r   r   r   r   Úgraphene.typesr   rK   ÚImportErrorÚtypingr   Úcollections.abcr   r   r   r   Úgraphene.language.sourcer   Úgraphql.executionr   Úgraphql.typer   Úsentry_sdk._typesr   r   r   r9   r:   r)   r"   r    ú<module>r„      sB  ðØ %Ð %Ð %Ð %Ð %Ð %à Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  Ø UÐ UÐ UÐ UÐ UÐ UÐ UÐ UÐ UÐ UØ 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?ðð ð ð ð ð ð ð ð ð ð ð ð ð ð4Ø8Ð8Ð8Ð8Ð8Ð8Ð8øØð 4ð 4ð 4Ø
ˆ,Ð2Ñ
3Ô
3Ð3ð4øøøð !Ð  Ð  Ð  Ð  Ð  àð (Ø)Ð)Ð)Ð)Ð)Ð)Ø'Ð'Ð'Ð'Ð'Ð'Ð'Ð'Ð'Ð'à/Ð/Ð/Ð/Ð/Ð/Ø1Ð1Ð1Ð1Ð1Ð1Ø*Ð*Ð*Ð*Ð*Ð*à'Ð'Ð'Ð'Ð'Ð'ðð ð ð ð ˜+ñ ô ð ð@<ð @<ð @<ð @<ðFð ð ð ð$ ðD5ØðD5Ø%9ðD5ØCSðD5à"ðD5ð D5ð D5ñ „ðD5ð D5ð D5s	   ¶= ½A