
    ,h                       d dl mZ ddlmZmZ d dlmZ d dlZd dlZddl	m
Z
 ddl	mZ ddl	mZ dd	l	mZ e G d
 d             Ze G d d             Ze G d d             Z G d dej"                        Z G d dej"                        Z G d dej"                        Z G d dej"                        Ze G d d             Ze G d d             Z G d dej"                        Z G d dej"                        Ze G d  d!             Z G d" d#ej"                        Ze G d$ d%             Z G d& d'ej"                        Z G d( d)ej"                        Ze G d* d+             Z G d, d-ej"                        Z e G d. d/             Z!e G d0 d1             Z" G d2 d3ej"                        Z#e G d4 d5             Z$e G d6 d7             Z%e G d8 d9             Z& G d: d;ej"                        Z' G d< d=ej"                        Z(e G d> d?             Z)e G d@ dA             Z*e G dB dC             Z+e G dD dE             Z, G dF dGej"                        Z-e G dH dI             Z.e G dJ dK             Z/e G dL dM             Z0e G dN dO             Z1 G dP dQej"                        Z2e G dR dS             Z3 G dT dUej"                        Z4e G dV dW             Z5 G dX dYej"                        Z6e G dZ d[             Z7e G d\ d]             Z8 G d^ d_ej"                        Z9e G d` da             Z: G db dcej"                        Z;e G dd de             Z< G df dgej"                        Z=e G dh di             Z> G dj dkej"                        Z?e G dl dm             Z@ G dn doeA      ZBe G dp dq             ZC	 	 dz	 	 	 	 	 	 	 	 	 d{drZDd|dsZEd|dtZF	 d}	 	 	 d~duZGddvZH edw      e G dx dy                    ZIy)    )annotations   )event_classT_JSON_DICT)	dataclassN)dom)network)page)runtimec                  F    e Zd ZU dZded<   ded<   ded<   d Zed        Zy)	AffectedCookiezL
    Information about a cookie that is affected by an inspector issue.
    strnamepathdomainc                t    t               }| j                  |d<   | j                  |d<   | j                  |d<   |S )Nr   r   r   )dictr   r   r   selfjsons     p/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/selenium/webdriver/common/devtools/v134/audits.pyto_jsonzAffectedCookie.to_json   s5    vyyVyyVX    c                `     | t        |d         t        |d         t        |d               S )Nr   r   r   )r   r   r   r   clsr   s     r   	from_jsonzAffectedCookie.from_json%   s3    T&\"T&\"tH~&
 	
r   N__name__
__module____qualname____doc____annotations__r   classmethodr    r   r   r   r      s1     I
IK 
 
r   r   c                  @    e Zd ZU dZded<   dZded<   d Zed        Zy)	AffectedRequestzM
    Information about a request that is affected by an inspector issue.
    r   urlN"typing.Optional[network.RequestId]
request_idc                    t               }| j                  |d<   | j                  | j                  j                         |d<   |S )Nr)   	requestId)r   r)   r+   r   r   s     r   r   zAffectedRequest.to_json8   s<    vhhU??& $ 7 7 9Dr   c                     | t        |d         d|v r't        j                  j                  |d               S d       S )Nr)   r-   )r)   r+   r   r	   	RequestIdr   r   s     r   r   zAffectedRequest.from_json?   sI    DK ITX\I\w((2243DE
 	
bf
 	
r   )	r    r!   r"   r#   r$   r+   r   r%   r   r&   r   r   r(   r(   .   s4     
H 6:J29 
 
r   r(   c                  2    e Zd ZU dZded<   d Zed        Zy)AffectedFramezE
    Information about the frame affected by an inspector issue.
    page.FrameIdframe_idc                T    t               }| j                  j                         |d<   |S )NframeId)r   r4   r   r   s     r   r   zAffectedFrame.to_jsonN   s$    v--//1Yr   c                T     | t         j                  j                  |d               S )Nr6   )r4   )r
   FrameIdr   r   s     r   r   zAffectedFrame.from_jsonS   s%    \\++DO<
 	
r   Nr   r&   r   r   r2   r2   G   s(     
 
 
r   r2   c                  N    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZd Zed        Zy)CookieExclusionReason&ExcludeSameSiteUnspecifiedTreatedAsLaxExcludeSameSiteNoneInsecureExcludeSameSiteLaxExcludeSameSiteStrictExcludeInvalidSameParty!ExcludeSamePartyCrossPartyContextExcludeDomainNonASCII-ExcludeThirdPartyCookieBlockedInFirstPartySetExcludeThirdPartyPhaseoutExcludePortMismatchExcludeSchemeMismatchc                    | j                   S Nvaluer   s    r   r   zCookieExclusionReason.to_jsong       zzr   c                     | |      S rG   r&   r   s     r   r   zCookieExclusionReason.from_jsonj       4yr   N)r    r!   r"   ,EXCLUDE_SAME_SITE_UNSPECIFIED_TREATED_AS_LAXEXCLUDE_SAME_SITE_NONE_INSECUREEXCLUDE_SAME_SITE_LAXEXCLUDE_SAME_SITE_STRICTEXCLUDE_INVALID_SAME_PARTY&EXCLUDE_SAME_PARTY_CROSS_PARTY_CONTEXTEXCLUDE_DOMAIN_NON_ASCII5EXCLUDE_THIRD_PARTY_COOKIE_BLOCKED_IN_FIRST_PARTY_SETEXCLUDE_THIRD_PARTY_PHASEOUTEXCLUDE_PORT_MISMATCHEXCLUDE_SCHEME_MISMATCHr   r%   r   r&   r   r   r:   r:   Z   s]    3[0&C#06!:-P*6<k9#> 15  r   r:   c                  Z    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZd Zed        Zy)CookieWarningReason'WarnSameSiteUnspecifiedCrossSiteContextWarnSameSiteNoneInsecure%WarnSameSiteUnspecifiedLaxAllowUnsafe$WarnSameSiteStrictLaxDowngradeStrict&WarnSameSiteStrictCrossDowngradeStrict#WarnSameSiteStrictCrossDowngradeLax#WarnSameSiteLaxCrossDowngradeStrict WarnSameSiteLaxCrossDowngradeLax WarnAttributeValueExceedsMaxSizeWarnDomainNonASCIIWarnThirdPartyPhaseout.WarnCrossSiteRedirectDowngradeChangesInclusionWarnDeprecationTrialMetadataWarnThirdPartyCookieHeuristicc                    | j                   S rG   rH   rJ   s    r   r   zCookieWarningReason.to_json   rK   r   c                     | |      S rG   r&   r   s     r   r   zCookieWarningReason.from_json   rM   r   N)r    r!   r"   -WARN_SAME_SITE_UNSPECIFIED_CROSS_SITE_CONTEXTWARN_SAME_SITE_NONE_INSECURE+WARN_SAME_SITE_UNSPECIFIED_LAX_ALLOW_UNSAFE*WARN_SAME_SITE_STRICT_LAX_DOWNGRADE_STRICT,WARN_SAME_SITE_STRICT_CROSS_DOWNGRADE_STRICT)WARN_SAME_SITE_STRICT_CROSS_DOWNGRADE_LAX)WARN_SAME_SITE_LAX_CROSS_DOWNGRADE_STRICT&WARN_SAME_SITE_LAX_CROSS_DOWNGRADE_LAX%WARN_ATTRIBUTE_VALUE_EXCEEDS_MAX_SIZEWARN_DOMAIN_NON_ASCIIWARN_THIRD_PARTY_PHASEOUT4WARN_CROSS_SITE_REDIRECT_DOWNGRADE_CHANGES_INCLUSIONWARN_DEPRECATION_TRIAL_METADATA!WARN_THIRD_PARTY_COOKIE_HEURISTICr   r%   r   r&   r   r   rZ   rZ   o   so    4]1#= 2Y/1W.3[00U-0U--O*,N)0 8;k8&D#(G%  r   rZ   c                  *    e Zd ZdZdZd Zed        Zy)CookieOperation	SetCookie
ReadCookiec                    | j                   S rG   rH   rJ   s    r   r   zCookieOperation.to_json   rK   r   c                     | |      S rG   r&   r   s     r   r   zCookieOperation.from_json   rM   r   N)r    r!   r"   
SET_COOKIEREAD_COOKIEr   r%   r   r&   r   r   rz   rz      s%    JK  r   rz   c                  2    e Zd ZdZdZdZdZd Zed        Z	y)InsightTypezM
    Represents the category of insight that a cookie issue falls under.
    GitHubResourceGracePeriod
Heuristicsc                    | j                   S rG   rH   rJ   s    r   r   zInsightType.to_json   rK   r   c                     | |      S rG   r&   r   s     r   r   zInsightType.from_json   rM   r   N)
r    r!   r"   r#   GIT_HUB_RESOURCEGRACE_PERIOD
HEURISTICSr   r%   r   r&   r   r   r   r      s2     ( LJ  r   r   c                  @    e Zd ZU dZded<   dZded<   d Zed        Zy)	CookieIssueInsightzE
    Information about the suggested solution to a cookie issue.
    r   type_Ntyping.Optional[str]table_entry_urlc                    t               }| j                  j                         |d<   | j                  | j                  |d<   |S )NtypetableEntryUrl)r   r   r   r   r   s     r   r   zCookieIssueInsight.to_json   s@    vzz))+V+$($8$8D!r   c                p     | t         j                  |d         d|v rt        |d               S d       S )Nr   r   )r   r   )r   r   r   r   s     r   r   zCookieIssueInsight.from_json   sB    ''V5:IT:QC_ 56
 	
W[
 	
r   )	r    r!   r"   r#   r$   r   r   r%   r   r&   r   r   r   r      s5      -1O)0 
 
r   r   c                      e Zd ZU dZded<   ded<   ded<   dZd	ed
<   dZded<   dZded<   dZded<   dZ	ded<   dZ
ded<   d Zed        Zy)CookieIssueDetailsz
    This information is currently necessary, as the front-end has a difficult
    time finding a specific cookie. With this, we can convey specific error
    information without the cookie.
    z typing.List[CookieWarningReason]cookie_warning_reasonsz"typing.List[CookieExclusionReason]cookie_exclusion_reasonsrz   	operationNztyping.Optional[AffectedCookie]cookier   raw_cookie_linesite_for_cookies
cookie_url typing.Optional[AffectedRequest]requestz#typing.Optional[CookieIssueInsight]insightc                   t               }| j                  D cg c]  }|j                          c}|d<   | j                  D cg c]  }|j                          c}|d<   | j                  j                         |d<   | j
                  | j
                  j                         |d<   | j                  | j                  |d<   | j                  | j                  |d<   | j                  | j                  |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d	<   |S c c}w c c}w )
NcookieWarningReasonscookieExclusionReasonsr   r   rawCookieLinesiteForCookies	cookieUrlr   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   is      r   r   zCookieIssueDetails.to_json   s#   v=A=X=X'Y		'Y#$?C?\?\)]!!))+)]%& NN224[;;"![[002DN+$($8$8D!  ,%)%:%:D!"??& $D<<#"ll224DO<<#"ll224DO (Z)]s   EEc                    | |d   D cg c]  }t         j                  |       c}|d   D cg c]  }t        j                  |       c}t        j                  |d         d|v rt        j                  |d         nd d|v rt        |d         nd d|v rt        |d         nd d|v rt        |d         nd d|v rt        j                  |d         nd d	|v rt        j                  |d	         
	      S d 
	      S c c}w c c}w )Nr   r   r   r   r   r   r   r   r   )	r   r   r   r   r   r   r   r   r   )rZ   r   r:   rz   r   r   r(   r   r   r   r   s      r   r   zCookieIssueDetails.from_json   s   NRSiNj#k$7$A$A!$D#kRVWoRp%qQ&;&E&Ea&H%q%//[0AB?G4?O>++DN;UY:IT:QC_ 56W[<LPT<TS&6!78Z^1<1Ds4,-$BKtBSO--d9o>Y]ENRVEV&00iA

 
	
 ]a

 
	
#k%qs
   C?D
)r    r!   r"   r#   r$   r   r   r   r   r   r   r   r%   r   r&   r   r   r   r      s}    
 =<@@  /3F+2,0O)0-1*1'+J$+04G-4 48G07& 
 
r   r   c                  .    e Zd ZdZdZdZd Zed        Zy)MixedContentResolutionStatusMixedContentBlocked!MixedContentAutomaticallyUpgradedMixedContentWarningc                    | j                   S rG   rH   rJ   s    r   r   z$MixedContentResolutionStatus.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   z&MixedContentResolutionStatus.from_json  rM   r   N)	r    r!   r"   MIXED_CONTENT_BLOCKED$MIXED_CONTENT_AUTOMATICALLY_UPGRADEDMIXED_CONTENT_WARNINGr   r%   r   r&   r   r   r   r      s-    1+N(1  r   r   c                      e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZd Z e!d        Z"y )!MixedContentResourceTypeAttributionSrcAudioBeacon	CSPReportDownloadEventSourceFaviconFontFormFrameImageImportJSONManifestPing
PluginDataPluginResourcePrefetchResourceScriptServiceWorkerSharedWorkerSpeculationRules
StylesheetTrackVideoWorkerXMLHttpRequestXSLTc                    | j                   S rG   rH   rJ   s    r   r   z MixedContentResourceType.to_json*  rK   r   c                     | |      S rG   r&   r   s     r   r   z"MixedContentResourceType.from_json-  rM   r   N)#r    r!   r"   ATTRIBUTION_SRCAUDIOBEACON
CSP_REPORTDOWNLOADEVENT_SOURCEFAVICONFONTFORMFRAMEIMAGEIMPORTr   MANIFESTPINGPLUGIN_DATAPLUGIN_RESOURCEPREFETCHRESOURCESCRIPTSERVICE_WORKERSHARED_WORKERSPECULATION_RULES
STYLESHEETTRACKVIDEOWORKERXML_HTTP_REQUESTr   r   r%   r   r&   r   r   r   r     s    &OEFJH LGDDEEFDHDK&OHHF$N"M*JEEF'D  r   r   c                  l    e Zd ZU ded<   ded<   ded<   dZded<   dZd	ed
<   dZded<   d Zed        Z	y)MixedContentIssueDetailsr   resolution_statusr   insecure_urlmain_resource_urlNz)typing.Optional[MixedContentResourceType]resource_typer   r   typing.Optional[AffectedFrame]framec                   t               }| j                  j                         |d<   | j                  |d<   | j                  |d<   | j
                  | j
                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   |S )NresolutionStatusinsecureURLmainResourceURLresourceTyper   r   )r   r   r   r   r   r   r   r   r   s     r   r   z MixedContentIssueDetails.to_jsonJ  s    v#'#9#9#A#A#C "//]"&"8"8)#'#5#5#=#=#?D <<#"ll224DO::! JJ..0DMr   c                ,    | t         j                  |d         t        |d         t        |d         d|v rt        j                  |d         nd d|v rt        j                  |d         nd d|v rt
        j                  |d               S d       S )Nr   r   r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r(   r2   r   s     r   r   z"MixedContentIssueDetails.from_jsonW  s    :DDTJ\E]^T-01!$'8"9:VdhlVl2<<T.=QRrvBKtBSO--d9o>Y]<CtO-))$w-8
 	
 RV
 	
r   )
r    r!   r"   r$   r   r   r   r   r%   r   r&   r   r   r   r   2  s\     43   @DM<C 15G-4 -1E)0 
 
r   r   c                  F    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
 Zed        Zy)BlockedByResponseReasonz
    Enum indicating the reason a response has been blocked. These reasons are
    refinements of the net error BLOCKED_BY_RESPONSE.
     CoepFrameResourceNeedsCoepHeader+CoopSandboxedIFrameCannotNavigateToCoopPageCorpNotSameOrigin1CorpNotSameOriginAfterDefaultedToSameOriginByCoep0CorpNotSameOriginAfterDefaultedToSameOriginByDip7CorpNotSameOriginAfterDefaultedToSameOriginByCoepAndDipCorpNotSameSiteSRIMessageSignatureMismatchc                    | j                   S rG   rH   rJ   s    r   r   zBlockedByResponseReason.to_jsonq  rK   r   c                     | |      S rG   r&   r   s     r   r   z!BlockedByResponseReason.from_jsont  rM   r   N)r    r!   r"   r#   %COEP_FRAME_RESOURCE_NEEDS_COEP_HEADER3COOP_SANDBOXED_I_FRAME_CANNOT_NAVIGATE_TO_COOP_PAGECORP_NOT_SAME_ORIGIN;CORP_NOT_SAME_ORIGIN_AFTER_DEFAULTED_TO_SAME_ORIGIN_BY_COEP:CORP_NOT_SAME_ORIGIN_AFTER_DEFAULTED_TO_SAME_ORIGIN_BY_DIPCCORP_NOT_SAME_ORIGIN_AFTER_DEFAULTED_TO_SAME_ORIGIN_BY_COEP_AND_DIPCORP_NOT_SAME_SITESRI_MESSAGE_SIGNATURE_MISMATCHr   r%   r   r&   r   r   r   r   c  sW     -O):g7.Bu?As> KDG*%B"  r   r   c                  X    e Zd ZU dZded<   ded<   dZded<   dZded	<   d
 Zed        Z	y)BlockedByResponseIssueDetailsz
    Details for a request that has been blocked with the BLOCKED_BY_RESPONSE
    code. Currently only used for COEP/COOP, but may be extended to include
    some CSP errors in the future.
    r(   r   r   reasonNr   parent_frameblocked_framec                2   t               }| j                  j                         |d<   | j                  j                         |d<   | j                  | j                  j                         |d<   | j
                  | j
                  j                         |d<   |S )Nr   r  parentFrameblockedFrame)r   r   r   r  r  r  r   s     r   r   z%BlockedByResponseIssueDetails.to_json  s    v,,..0Y,,.X("&"3"3";";"=D)#'#5#5#=#=#?D r   c           	          | t         j                  |d         t        j                  |d         d|v rt        j                  |d         nd d|v rt        j                  |d               S d       S )Nr   r  r  r  )r   r  r  r  )r(   r   r   r2   r   s     r   r   z'BlockedByResponseIssueDetails.from_json  s}    #--d9o>*44T(^DIVZ^I^00m1DEdhKY]aKa-11$~2FG	
 	
 hl	
 	
r   )
r    r!   r"   r#   r$   r  r  r   r%   r   r&   r   r   r  r  y  sD    
 ##37L0748M18 
 
r   r  c                  *    e Zd ZdZdZd Zed        Zy)HeavyAdResolutionStatusHeavyAdBlockedHeavyAdWarningc                    | j                   S rG   rH   rJ   s    r   r   zHeavyAdResolutionStatus.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   z!HeavyAdResolutionStatus.from_json  rM   r   N)r    r!   r"   HEAVY_AD_BLOCKEDHEAVY_AD_WARNINGr   r%   r   r&   r   r   r  r    s'    ''  r   r  c                  .    e Zd ZdZdZdZd Zed        Zy)HeavyAdReasonNetworkTotalLimitCpuTotalLimitCpuPeakLimitc                    | j                   S rG   rH   rJ   s    r   r   zHeavyAdReason.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   zHeavyAdReason.from_json  rM   r   N)	r    r!   r"   NETWORK_TOTAL_LIMITCPU_TOTAL_LIMITCPU_PEAK_LIMITr   r%   r   r&   r   r   r$  r$    s+    -%O#N  r   r$  c                  B    e Zd ZU ded<   ded<   ded<   d Zed        Zy	)
HeavyAdIssueDetailsr  
resolutionr$  r  r2   r   c                    t               }| j                  j                         |d<   | j                  j                         |d<   | j                  j                         |d<   |S )Nr/  r  r   )r   r/  r   r  r   r   s     r   r   zHeavyAdIssueDetails.to_json  sQ    v!__446\,,.X

**,Wr   c                     | t         j                  |d         t        j                  |d         t        j                  |d               S )Nr/  r  r   )r/  r  r   )r  r   r$  r2   r   s     r   r   zHeavyAdIssueDetails.from_json  sF    .88l9KL **4>:))$w-8
 	
r   Nr    r!   r"   r$   r   r%   r   r&   r   r   r.  r.    s3     ('   
 
r   r.  c                  :    e Zd ZdZdZdZdZdZdZd Z	e
d        Zy	)
"ContentSecurityPolicyViolationTypekInlineViolationkEvalViolationkURLViolationkTrustedTypesSinkViolationkTrustedTypesPolicyViolationkWasmEvalViolationc                    | j                   S rG   rH   rJ   s    r   r   z*ContentSecurityPolicyViolationType.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   z,ContentSecurityPolicyViolationType.from_json  rM   r   N)r    r!   r"   K_INLINE_VIOLATIONK_EVAL_VIOLATIONK_URL_VIOLATIONK_TRUSTED_TYPES_SINK_VIOLATION K_TRUSTED_TYPES_POLICY_VIOLATIONK_WASM_EVAL_VIOLATIONr   r%   r   r&   r   r   r4  r4    s>    +'%O%A"'E$0  r   r4  c                  P    e Zd ZU ded<   ded<   ded<   dZded<   d	 Zed
        Zy)SourceCodeLocationr   r)   intline_numbercolumn_numberNz!typing.Optional[runtime.ScriptId]	script_idc                    t               }| j                  |d<   | j                  |d<   | j                  |d<   | j                  | j                  j                         |d<   |S )Nr)   
lineNumbercolumnNumberscriptId)r   r)   rF  rG  rH  r   r   s     r   r   zSourceCodeLocation.to_json  s\    vhhU!--\#11^>>%#~~557Dr   c           	          | t        |d         t        |d         t        |d         d|v r't        j                  j	                  |d               S d       S )Nr)   rJ  rK  rL  )r)   rF  rG  rH  )r   rE  r   ScriptIdr   r   s     r   r   zSourceCodeLocation.from_json  sg    DK D./d>23FPTXFXg&&00j1AB	
 	
 _c	
 	
r   )r    r!   r"   r$   rH  r   r%   r   r&   r   r   rD  rD    s7    	H37I07 
 
r   rD  c                  z    e Zd ZU ded<   ded<   ded<   dZded	<   dZd
ed<   dZded<   dZded<   d Ze	d        Z
y)!ContentSecurityPolicyIssueDetailsr   violated_directiveboolis_report_onlyr4  &content_security_policy_violation_typeNr   blocked_urlr   frame_ancestor#typing.Optional[SourceCodeLocation]source_code_location"typing.Optional[dom.BackendNodeId]violating_node_idc                   t               }| j                  |d<   | j                  |d<   | j                  j	                         |d<   | j
                  | j
                  |d<   | j                  | j                  j	                         |d<   | j                  | j                  j	                         |d<   | j                  | j                  j	                         |d<   |S )NviolatedDirectiveisReportOnly"contentSecurityPolicyViolationType
blockedURLframeAncestorsourceCodeLocationviolatingNodeId)	r   rQ  rS  rT  r   rU  rV  rX  rZ  r   s     r   r   z)ContentSecurityPolicyIssueDetails.to_json  s    v$($;$; !#22^595`5`5h5h5j12'!%!1!1D*$($7$7$?$?$AD!$$0)-)B)B)J)J)LD%&!!-&*&<&<&D&D&FD"#r   c                f    | t        |d         t        |d         t        j                  |d         d|v rt        |d         nd d|v rt        j                  |d         nd d|v rt
        j                  |d         nd d|v r't        j                  j                  |d               S d       S )	Nr\  r]  r^  r_  r`  ra  rb  )rQ  rS  rT  rU  rV  rX  rZ  )r   rR  r4  r   r2   rD  r   BackendNodeIdr   s     r   r   z+ContentSecurityPolicyIssueDetails.from_json  s    "4(;#<=^ 453U3_3_`d  fJ  aK  4L3?43GD./TM\`dMd=2243HIjn]quy]y!3!=!=dCW>X!Y  @DVgkoVoc//99$?P:QR
 	
 vz
 	
r   )r    r!   r"   r$   rU  rV  rX  rZ  r   r%   r   r&   r   r   rP  rP    s_     ,NN )-K%,59N29@D=D<@9@ 	
 	
r   rP  c                  *    e Zd ZdZdZd Zed        Zy)SharedArrayBufferIssueTypeTransferIssueCreationIssuec                    | j                   S rG   rH   rJ   s    r   r   z"SharedArrayBufferIssueType.to_json/  rK   r   c                     | |      S rG   r&   r   s     r   r   z$SharedArrayBufferIssueType.from_json2  rM   r   N)r    r!   r"   TRANSFER_ISSUECREATION_ISSUEr   r%   r   r&   r   r   rf  rf  +  s%    $N$N  r   rf  c                  F    e Zd ZU dZded<   ded<   ded<   d Zed	        Zy
)SharedArrayBufferIssueDetailsz
    Details for a issue arising from an SAB being instantiated in, or
    transferred to a context that is not cross-origin isolated.
    rD  rX  rR  
is_warningrf  r   c                    t               }| j                  j                         |d<   | j                  |d<   | j                  j                         |d<   |S )Nra  	isWarningr   )r   rX  r   ro  r   r   s     r   r   z%SharedArrayBufferIssueDetails.to_jsonC  sL    v%)%>%>%F%F%H!" OO[zz))+Vr   c                     | t         j                  |d         t        |d         t        j                  |d               S )Nra  rq  r   )rX  ro  r   )rD  r   rR  rf  r   s     r   r   z'SharedArrayBufferIssueDetails.from_jsonJ  sB    !3!=!=dCW>X!YD-.,66tF|D
 	
r   Nr   r&   r   r   rn  rn  7  s4     -,%% 
 
r   rn  c                  j    e Zd ZU ded<   ded<   ded<   ded<   ded<   ded	<   ded
<   d Zed        Zy)LowTextContrastIssueDetailsdom.BackendNodeIdrZ  r   violating_node_selectorfloatcontrast_ratiothreshold_aathreshold_aaa	font_sizefont_weightc                   t               }| j                  j                         |d<   | j                  |d<   | j                  |d<   | j
                  |d<   | j                  |d<   | j                  |d<   | j                  |d<   |S )Nrb  violatingNodeSelectorcontrastRatiothresholdAAthresholdAAAfontSize
fontWeight)	r   rZ  r   rv  rx  ry  rz  r{  r|  r   s     r   r   z#LowTextContrastIssueDetails.to_jsonc  s    v"&"8"8"@"@"B(,(D(D$% $ 3 3_"//]#11^>>Z!--\r   c                     | t         j                  j                  |d         t        |d         t	        |d         t	        |d         t	        |d         t        |d         t        |d               S )	Nrb  r~  r  r  r  r  r  )rZ  rv  rx  ry  rz  r{  r|  )r   rd  r   r   rw  r   s     r   r   z%LowTextContrastIssueDetails.from_jsonn  sx    !//99$?P:QR$'-D(E$F o!67tM23^ 45$z*+D./
 	
r   Nr2  r&   r   r   rt  rt  S  sD    ((  N	 	
 	
r   rt  c                  ~    e Zd ZU dZded<   ded<   ded<   dZd	ed
<   dZded<   dZded<   dZded<   d Z	e
d        Zy)CorsIssueDetailszl
    Details for a CORS related issue, e.g. a warning or error related to
    CORS RFC1918 enforcement.
    znetwork.CorsErrorStatuscors_error_statusrR  ro  r(   r   NrW  locationr   initiator_originz'typing.Optional[network.IPAddressSpace]resource_ip_address_spacez,typing.Optional[network.ClientSecurityState]client_security_statec                   t               }| j                  j                         |d<   | j                  |d<   | j                  j                         |d<   | j
                  | j
                  j                         |d<   | j                  | j                  |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   |S )NcorsErrorStatusrq  r   r  initiatorOriginresourceIPAddressSpaceclientSecurityState)	r   r  r   ro  r   r  r  r  r  r   s     r   r   zCorsIssueDetails.to_json  s    v"&"8"8"@"@"B OO[,,..0Y==$#}}446D  ,&*&;&;D"#))5-1-K-K-S-S-UD)*%%1*.*D*D*L*L*ND&'r   c                    | t         j                  j                  |d         t        |d         t        j                  |d         d|v rt
        j                  |d         nd d|v rt        |d         nd d|v r"t         j                  j                  |d         nd d|v r't         j                  j                  |d               S d       S )	Nr  rq  r   r  r  r  r  )r  ro  r   r  r  r  r  )	r	   CorsErrorStatusr   rR  r(   rD  r   IPAddressSpaceClientSecurityStater   s     r   r   zCorsIssueDetails.from_json  s    %55??EV@WXD-.#--d9o>GQUYGY'11$z2BC_c=NRV=VS&7!89\` kC  GK  kKg&<&<&F&FtLdGe&f  QUh}  BF  iF'"="="G"GMbHc"d
 	
 LP
 	
r   )r    r!   r"   r#   r$   r  r  r  r  r   r%   r   r&   r   r   r  r  {  sc     /.48H18-1*1IMFMJNGN 	
 	
r   r  c                  v    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZd Zed        Zy)AttributionReportingIssueTypePermissionPolicyDisabledUntrustworthyReportingOriginInsecureContextInvalidHeaderInvalidRegisterTriggerHeaderSourceAndTriggerHeadersSourceIgnoredTriggerIgnoredOsSourceIgnoredOsTriggerIgnoredInvalidRegisterOsSourceHeaderInvalidRegisterOsTriggerHeaderWebAndOsHeadersNoWebOrOsSupport4NavigationRegistrationWithoutTransientUserActivationInvalidInfoHeaderNoRegisterSourceHeaderNoRegisterTriggerHeaderNoRegisterOsSourceHeaderNoRegisterOsTriggerHeader+NavigationRegistrationUniqueScopeAlreadySetc                    | j                   S rG   rH   rJ   s    r   r   z%AttributionReportingIssueType.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   z'AttributionReportingIssueType.from_json  rM   r   N)r    r!   r"   PERMISSION_POLICY_DISABLEDUNTRUSTWORTHY_REPORTING_ORIGININSECURE_CONTEXTINVALID_HEADERINVALID_REGISTER_TRIGGER_HEADERSOURCE_AND_TRIGGER_HEADERSSOURCE_IGNOREDTRIGGER_IGNOREDOS_SOURCE_IGNOREDOS_TRIGGER_IGNORED!INVALID_REGISTER_OS_SOURCE_HEADER"INVALID_REGISTER_OS_TRIGGER_HEADERWEB_AND_OS_HEADERSNO_WEB_OR_OS_SUPPORT9NAVIGATION_REGISTRATION_WITHOUT_TRANSIENT_USER_ACTIVATIONINVALID_INFO_HEADERNO_REGISTER_SOURCE_HEADERNO_REGISTER_TRIGGER_HEADERNO_REGISTER_OS_SOURCE_HEADERNO_REGISTER_OS_TRIGGER_HEADER0NAVIGATION_REGISTRATION_UNIQUE_SCOPE_ALREADY_SETr   r%   r   r&   r   r   r  r    s    !;%C"($N&D#!:$N&O)+(G%)I&*-@v=- 8!:#= $?!7d4  r   r  c                  ~    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZd Zed        Zy)SharedDictionaryError UseErrorCrossOriginNoCorsRequestUseErrorDictionaryLoadFailure!UseErrorMatchingDictionaryNotUsed)UseErrorUnexpectedContentDictionaryHeader!WriteErrorCossOriginNoCorsRequestWriteErrorDisallowedBySettingsWriteErrorExpiredResponseWriteErrorFeatureDisabledWriteErrorInsufficientResourcesWriteErrorInvalidMatchField!WriteErrorInvalidStructuredHeaderWriteErrorNavigationRequestWriteErrorNoMatchFieldWriteErrorNonListMatchDestFieldWriteErrorNonSecureContextWriteErrorNonStringIdField"WriteErrorNonStringInMatchDestListWriteErrorNonStringMatchFieldWriteErrorNonTokenTypeFieldWriteErrorRequestAbortedWriteErrorShuttingDownWriteErrorTooLongIdFieldWriteErrorUnsupportedTypec                    | j                   S rG   rH   rJ   s    r   r   zSharedDictionaryError.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   zSharedDictionaryError.from_json  rM   r   N)r    r!   r"   &USE_ERROR_CROSS_ORIGIN_NO_CORS_REQUEST!USE_ERROR_DICTIONARY_LOAD_FAILURE&USE_ERROR_MATCHING_DICTIONARY_NOT_USED.USE_ERROR_UNEXPECTED_CONTENT_DICTIONARY_HEADER'WRITE_ERROR_COSS_ORIGIN_NO_CORS_REQUEST"WRITE_ERROR_DISALLOWED_BY_SETTINGSWRITE_ERROR_EXPIRED_RESPONSEWRITE_ERROR_FEATURE_DISABLED"WRITE_ERROR_INSUFFICIENT_RESOURCESWRITE_ERROR_INVALID_MATCH_FIELD%WRITE_ERROR_INVALID_STRUCTURED_HEADERWRITE_ERROR_NAVIGATION_REQUESTWRITE_ERROR_NO_MATCH_FIELD%WRITE_ERROR_NON_LIST_MATCH_DEST_FIELDWRITE_ERROR_NON_SECURE_CONTEXTWRITE_ERROR_NON_STRING_ID_FIELD)WRITE_ERROR_NON_STRING_IN_MATCH_DEST_LIST"WRITE_ERROR_NON_STRING_MATCH_FIELD WRITE_ERROR_NON_TOKEN_TYPE_FIELDWRITE_ERROR_REQUEST_ABORTEDWRITE_ERROR_SHUTTING_DOWNWRITE_ERROR_TOO_LONG_ID_FIELDWRITE_ERROR_UNSUPPORTED_TYPEr   r%   r   r&   r   r   r  r    s    -O*(G%-P*5`2.Q+)I&#> #> )J&&C#,O)%B"!9,M)%A"&B#0T-)H&'D$"< 8$>!#>   r   r  c                  \    e Zd ZU dZded<   dZded<   dZded<   dZd	ed
<   d Ze	d        Z
y) AttributionReportingIssueDetailsz
    Details for issues around "Attribution Reporting API" usage.
    Explainer: https://github.com/WICG/attribution-reporting-api
    r  violation_typeNr   r   rY  rZ  r   invalid_parameterc                .   t               }| j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j
                  | j
                  |d<   |S )NviolationTyper   rb  invalidParameter)r   r  r   r   rZ  r  r   s     r   r   z(AttributionReportingIssueDetails.to_json  s    v $ 3 3 ; ; =_<<#"ll224DO!!-&*&<&<&D&D&FD"#!!-'+'='=D#$r   c           	          | t         j                  |d         d|v rt        j                  |d         nd d|v r"t        j                  j                  |d         nd d|v rt        |d               S d       S )Nr  r   rb  r  )r  r   rZ  r  )r  r   r(   r   rd  r   r   s     r   r   z*AttributionReportingIssueDetails.from_json  s    8BB4CXYBKtBSO--d9o>Y]VgkoVoc//99$?P:QRuy?QUY?Yc$'9":;	
 	
 `d	
 	
r   )r    r!   r"   r#   r$   r   rZ  r  r   r%   r   r&   r   r   r  r    sK     2104G-4<@9@.2+2	 
 
r   r  c                  Z    e Zd ZU dZded<   ded<   ded<   ded	<   d
ed<   d Zed        Zy)QuirksModeIssueDetailszs
    Details for issues about documents in Quirks Mode
    or Limited Quirks Mode that affects page layouting.
    rR  is_limited_quirks_moderu  document_node_idr   r)   r3   r4   znetwork.LoaderId	loader_idc                   t               }| j                  |d<   | j                  j                         |d<   | j                  |d<   | j
                  j                         |d<   | j                  j                         |d<   |S )NisLimitedQuirksModedocumentNodeIdr)   r6   loaderId)r   r  r   r   r)   r4   r  r   s     r   r   zQuirksModeIssueDetails.to_json   ss    v&*&A&A"#!%!6!6!>!>!@hhU--//1Y>>113Zr   c           
         | t        |d         t        j                  j                  |d         t	        |d         t
        j                  j                  |d         t        j                  j                  |d               S )Nr  r  r)   r6   r  )r  r   r)   r4   r  )	rR  r   rd  r   r   r
   r8   r	   LoaderIdr   s     r   r   z QuirksModeIssueDetails.from_json)  sr    #'-B(C#D ..88>N9OPDK \\++DO<&&00j1AB
 	
r   Nr   r&   r   r   r  r    s?     ! ''	H 
 
r   r  c                  <    e Zd ZU ded<   dZded<   d Zed        Zy)NavigatorUserAgentIssueDetailsr   r)   NrW  r  c                    t               }| j                  |d<   | j                  | j                  j                         |d<   |S )Nr)   r  )r   r)   r  r   r   s     r   r   z&NavigatorUserAgentIssueDetails.to_json:  s<    vhhU==$#}}446Dr   c                p     | t        |d         d|v rt        j                  |d               S d       S )Nr)   r  )r)   r  )r   rD  r   r   s     r   r   z(NavigatorUserAgentIssueDetails.from_jsonA  sD    DK GQUYGY'11$z2BC
 	
_c
 	
r   )r    r!   r"   r$   r  r   r%   r   r&   r   r   r	  r	  4  s+    	H48H18 
 
r   r	  c                  8    e Zd ZU ded<   ded<   d Zed        Zy)SharedDictionaryIssueDetailsr  shared_dictionary_errorr(   r   c                    t               }| j                  j                         |d<   | j                  j                         |d<   |S )NsharedDictionaryErrorr   )r   r  r   r   r   s     r   r   z$SharedDictionaryIssueDetails.to_jsonO  s>    v(,(D(D(L(L(N$%,,..0Yr   c                n     | t         j                  |d         t        j                  |d               S )Nr  r   )r  r   )r  r   r(   r   s     r   r   z&SharedDictionaryIssueDetails.from_jsonU  s5    $9$C$CDI`Da$b#--d9o>
 	
r   Nr2  r&   r   r   r  r  I  s'    22 
 
r   r  c                  N    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZd Zed        Zy)GenericIssueErrorTypeFormLabelForNameErrorFormDuplicateIdForInputErrorFormInputWithNoLabelError#FormAutocompleteAttributeEmptyError)FormEmptyIdAndNameAttributesForInputError!FormAriaLabelledByToNonExistingId:FormInputAssignedAutocompleteValueToIdOrNameAttributeError$FormLabelHasNeitherForNorNestedInput%FormLabelForMatchesNonExistingIdError6FormInputHasWrongButWellIntendedAutocompleteValueErrorResponseWasBlockedByORBc                    | j                   S rG   rH   rJ   s    r   r   zGenericIssueErrorType.to_jsonj  rK   r   c                     | |      S rG   r&   r   s     r   r   zGenericIssueErrorType.from_jsonm  rM   r   N)r    r!   r"   FORM_LABEL_FOR_NAME_ERROR!FORM_DUPLICATE_ID_FOR_INPUT_ERRORFORM_INPUT_WITH_NO_LABEL_ERROR'FORM_AUTOCOMPLETE_ATTRIBUTE_EMPTY_ERROR1FORM_EMPTY_ID_AND_NAME_ATTRIBUTES_FOR_INPUT_ERROR(FORM_ARIA_LABELLED_BY_TO_NON_EXISTING_IDDFORM_INPUT_ASSIGNED_AUTOCOMPLETE_VALUE_TO_ID_OR_NAME_ATTRIBUTE_ERROR+FORM_LABEL_HAS_NEITHER_FOR_NOR_NESTED_INPUT,FORM_LABEL_FOR_MATCHES_NON_EXISTING_ID_ERROR?FORM_INPUT_HAS_WRONG_BUT_WELL_INTENDED_AUTOCOMPLETE_VALUE_ERRORRESPONSE_WAS_BLOCKED_BY_ORBr   r%   r   r&   r   r   r  r  ]  sa     7(F%%@".S+8c5/R, LHH2X/3Z0F~C";  r   r  c                  j    e Zd ZU dZded<   dZded<   dZded<   dZd	ed
<   dZded<   d Z	e
d        Zy)GenericIssueDetailszL
    Depending on the concrete errorType, different properties are set.
    r  
error_typeNztyping.Optional[page.FrameId]r4   rY  rZ  r   violating_node_attributer   r   c                   t               }| j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j
                  | j
                  |d<   | j                  | j                  j                         |d<   |S )N	errorTyper6   rb  violatingNodeAttributer   )r   r.  r   r4   rZ  r/  r   r   s     r   r   zGenericIssueDetails.to_json  s    v OO335[==$"mm335DO!!-&*&<&<&D&D&FD"#((4-1-J-JD)*<<#"ll224DOr   c           
     F    | t         j                  |d         d|v r"t        j                  j                  |d         nd d|v r"t        j
                  j                  |d         nd d|v rt        |d         nd d|v rt        j                  |d               S d       S )Nr1  r6   rb  r2  r   )r.  r4   rZ  r/  r   )r  r   r
   r8   r   rd  r   r(   r   s     r   r   zGenericIssueDetails.from_json  s    ,66tK7HI@IT@QT\\++DO<W[VgkoVoc//99$?P:QRuyLdhlLlS.F)G%HrvBKtBSO--d9o>
 	

 Z^
 	
r   )r    r!   r"   r#   r$   r4   rZ  r/  r   r   r%   r   r&   r   r   r-  r-  r  sV     &%.2H+2<@9@592904G-4 
 
r   r-  c                  J    e Zd ZU dZded<   ded<   dZded<   d	 Zed
        Zy)DeprecationIssueDetailsz
    This issue tracks information needed to print a deprecation message.
    https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/frame/third_party/blink/renderer/core/frame/deprecation/README.md
    rD  rX  r   r   Nr   affected_framec                    t               }| j                  j                         |d<   | j                  |d<   | j                  | j                  j                         |d<   |S )Nra  r   affectedFrame)r   rX  r   r   r6  r   s     r   r   zDeprecationIssueDetails.to_json  sZ    v%)%>%>%F%F%H!"zzV*$($7$7$?$?$AD!r   c                     | t         j                  |d         t        |d         d|v rt        j                  |d               S d       S )Nra  r   r8  )rX  r   r6  )rD  r   r   r2   r   s     r   r   z!DeprecationIssueDetails.from_json  s[    !3!=!=dCW>X!Yd6l#M\`dMd=2243HI
 	
 ko
 	
r   )	r    r!   r"   r#   r$   r6  r   r%   r   r&   r   r   r5  r5    s:     -, J59N29 
 
r   r5  c                  2    e Zd ZU dZded<   d Zed        Zy)BounceTrackingIssueDetailsa~  
    This issue warns about sites in the redirect chain of a finished navigation
    that may be flagged as trackers and have their state cleared if they don't
    receive a user interaction. Note that in this context 'site' means eTLD+1.
    For example, if the URL ``https://example.test:80/bounce`` was in the
    redirect chain, the site reported would be ``example.test``.
    typing.List[str]tracking_sitesc                ^    t               }| j                  D cg c]  }| c}|d<   |S c c}w )NtrackingSites)r   r=  r   s      r   r   z"BounceTrackingIssueDetails.to_json  s/    v,0,?,? @q @_ !As   	*c                R     | |d   D cg c]  }t        |       c}      S c c}w )Nr?  )r=  r   r   s      r   r   z$BounceTrackingIssueDetails.from_json  s)    ,0,ABqCFB
 	
Bs   $Nr   r&   r   r   r;  r;    s(     %$
 
 
r   r;  c                  P    e Zd ZU dZded<   ded<   ded<   ded	<   d
 Zed        Zy)%CookieDeprecationMetadataIssueDetailsaa  
    This issue warns about third-party sites that are accessing cookies on the
    current page, and have been permitted due to having a global metadata grant.
    Note that in this context 'site' means eTLD+1. For example, if the URL
    ``https://example.test:80/web_page`` was accessing cookies, the site reported
    would be ``example.test``.
    r<  allowed_sitesrw  opt_out_percentagerR  is_opt_out_top_levelrz   r   c                    t               }| j                  D cg c]  }| c}|d<   | j                  |d<   | j                  |d<   | j                  j                         |d<   |S c c}w )NallowedSitesoptOutPercentageisOptOutTopLevelr   )r   rC  rD  rE  r   r   r   s      r   r   z-CookieDeprecationMetadataIssueDetails.to_json  sg    v+/+=+=>a>^#'#:#: #'#<#<  NN224[	  ?s   	A%c           	          | |d   D cg c]  }t        |       c}t        |d         t        |d         t        j	                  |d               S c c}w )NrG  rH  rI  r   )rC  rD  rE  r   )r   rw  rR  rz   r   r   s      r   r   z/CookieDeprecationMetadataIssueDetails.from_json  sX    +/+?@a3q6@$T*<%=>!%d+=&>!?%//[0AB	
 	
@s   ANr   r&   r   r   rB  rB    s:     $# 
 
r   rB  c                  *    e Zd ZdZdZd Zed        Zy)ClientHintIssueReasonMetaTagAllowListInvalidOriginMetaTagModifiedHTMLc                    | j                   S rG   rH   rJ   s    r   r   zClientHintIssueReason.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   zClientHintIssueReason.from_json  rM   r   N)r    r!   r"   "META_TAG_ALLOW_LIST_INVALID_ORIGINMETA_TAG_MODIFIED_HTMLr   r%   r   r&   r   r   rL  rL    s'    )H&2  r   rL  c                  .    e Zd ZU ded<   d Zed        Zy) FederatedAuthRequestIssueDetailsFederatedAuthRequestIssueReason#federated_auth_request_issue_reasonc                T    t               }| j                  j                         |d<   |S )NfederatedAuthRequestIssueReason)r   rV  r   r   s     r   r   z(FederatedAuthRequestIssueDetails.to_json  s(    v262Z2Z2b2b2d./r   c                @     | t         j                  |d               S )NrX  )rV  )rU  r   r   s     r   r   z*FederatedAuthRequestIssueDetails.from_json  s/    0O0Y0YZ^  `A  [B  1C
 	
r   Nr2  r&   r   r   rT  rT    s!    )HH
 
 
r   rT  c                      e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-Z/d.Z0d/Z1d0 Z2e3d1        Z4y2)3rU  z
    Represents the failure reason when a federated authentication reason fails.
    Should be updated alongside RequestIdTokenStatus in
    third_party/blink/public/mojom/devtools/inspector_issue.mojom to include
    all cases except for success.
    ShouldEmbargoTooManyRequestsWellKnownHttpNotFoundWellKnownNoResponseWellKnownInvalidResponseWellKnownListEmptyWellKnownInvalidContentTypeConfigNotInWellKnownWellKnownTooBigConfigHttpNotFoundConfigNoResponseConfigInvalidResponseConfigInvalidContentTypeClientMetadataHttpNotFoundClientMetadataNoResponseClientMetadataInvalidResponse ClientMetadataInvalidContentTypeIdpNotPotentiallyTrustworthyDisabledInSettingsDisabledInFlagsErrorFetchingSigninInvalidSigninResponseAccountsHttpNotFoundAccountsNoResponseAccountsInvalidResponseAccountsListEmptyAccountsInvalidContentTypeIdTokenHttpNotFoundIdTokenNoResponseIdTokenInvalidResponseIdTokenIdpErrorResponse IdTokenCrossSiteIdpErrorResponseIdTokenInvalidRequestIdTokenInvalidContentTypeErrorIdTokenCanceledRpPageNotVisibleSilentMediationFailureThirdPartyCookiesBlockedNotSignedInWithIdpMissingTransientUserActivationReplacedByActiveModeInvalidFieldsSpecifiedRelyingPartyOriginIsOpaqueTypeNotMatchingUiDismissedNoEmbargoc                    | j                   S rG   rH   rJ   s    r   r   z'FederatedAuthRequestIssueReason.to_jsonD  rK   r   c                     | |      S rG   r&   r   s     r   r   z)FederatedAuthRequestIssueReason.from_jsonG  rM   r   N)5r    r!   r"   r#   SHOULD_EMBARGOTOO_MANY_REQUESTSWELL_KNOWN_HTTP_NOT_FOUNDWELL_KNOWN_NO_RESPONSEWELL_KNOWN_INVALID_RESPONSEWELL_KNOWN_LIST_EMPTYWELL_KNOWN_INVALID_CONTENT_TYPECONFIG_NOT_IN_WELL_KNOWNWELL_KNOWN_TOO_BIGCONFIG_HTTP_NOT_FOUNDCONFIG_NO_RESPONSECONFIG_INVALID_RESPONSECONFIG_INVALID_CONTENT_TYPECLIENT_METADATA_HTTP_NOT_FOUNDCLIENT_METADATA_NO_RESPONSE CLIENT_METADATA_INVALID_RESPONSE$CLIENT_METADATA_INVALID_CONTENT_TYPEIDP_NOT_POTENTIALLY_TRUSTWORTHYDISABLED_IN_SETTINGSDISABLED_IN_FLAGSERROR_FETCHING_SIGNININVALID_SIGNIN_RESPONSEACCOUNTS_HTTP_NOT_FOUNDACCOUNTS_NO_RESPONSEACCOUNTS_INVALID_RESPONSEACCOUNTS_LIST_EMPTYACCOUNTS_INVALID_CONTENT_TYPEID_TOKEN_HTTP_NOT_FOUNDID_TOKEN_NO_RESPONSEID_TOKEN_INVALID_RESPONSEID_TOKEN_IDP_ERROR_RESPONSE&ID_TOKEN_CROSS_SITE_IDP_ERROR_RESPONSEID_TOKEN_INVALID_REQUESTID_TOKEN_INVALID_CONTENT_TYPEERROR_ID_TOKENCANCELEDRP_PAGE_NOT_VISIBLESILENT_MEDIATION_FAILURETHIRD_PARTY_COOKIES_BLOCKEDNOT_SIGNED_IN_WITH_IDP!MISSING_TRANSIENT_USER_ACTIVATIONREPLACED_BY_ACTIVE_MODEINVALID_FIELDS_SPECIFIEDRELYING_PARTY_ORIGIN_IS_OPAQUETYPE_NOT_MATCHINGUI_DISMISSED_NO_EMBARGOr   r%   r   r&   r   r   rU  rU    s3    %N) 72"<0&C#5*0+5"<%A""<'F$+M(&D#/)154/ 9-$@!3. 8";-O*6$?!#NH,7"<1(H%47%A")4  r   rU  c                  .    e Zd ZU ded<   d Zed        Zy)(FederatedAuthUserInfoRequestIssueDetails'FederatedAuthUserInfoRequestIssueReason-federated_auth_user_info_request_issue_reasonc                T    t               }| j                  j                         |d<   |S )N'federatedAuthUserInfoRequestIssueReason)r   r  r   r   s     r   r   z0FederatedAuthUserInfoRequestIssueDetails.to_jsonP  s(    v:>:l:l:t:t:v67r   c                @     | t         j                  |d               S )Nr  )r  )r  r   r   s     r   r   z2FederatedAuthUserInfoRequestIssueDetails.from_jsonU  s/    :a:k:klp  r[  m\  ;]
 	
r   Nr2  r&   r   r   r  r  L  s!    3ZZ
 
 
r   r  c                  J    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
Zd Zed        Zy)r  z
    Represents the failure reason when a getUserInfo() call fails.
    Should be updated alongside FederatedAuthUserInfoRequestResult in
    third_party/blink/public/mojom/devtools/inspector_issue.mojom.
    NotSameOrigin	NotIframeNotPotentiallyTrustworthyNoApiPermissionr  NoAccountSharingPermissionInvalidConfigOrWellKnownInvalidAccountsResponse"NoReturningUserFromFetchedAccountsc                    | j                   S rG   rH   rJ   s    r   r   z/FederatedAuthUserInfoRequestIssueReason.to_jsonl  rK   r   c                     | |      S rG   r&   r   s     r   r   z1FederatedAuthUserInfoRequestIssueReason.from_jsono  rM   r   N)r    r!   r"   r#   NOT_SAME_ORIGIN
NOT_IFRAMENOT_POTENTIALLY_TRUSTWORTHYNO_API_PERMISSIONr  NO_ACCOUNT_SHARING_PERMISSIONINVALID_CONFIG_OR_WELL_KNOWNINVALID_ACCOUNTS_RESPONSE'NO_RETURNING_USER_FROM_FETCHED_ACCOUNTSr   r%   r   r&   r   r   r  r  \  sV    
 &OJ"=)1$@!#=  9.R+  r   r  c                  <    e Zd ZU dZded<   ded<   d Zed        Zy)	ClientHintIssueDetailsz
    This issue tracks client hints related issues. It's used to deprecate old
    features, encourage the use of new ones, and provide general guidance.
    rD  rX  rL  client_hint_issue_reasonc                    t               }| j                  j                         |d<   | j                  j                         |d<   |S )Nra  clientHintIssueReason)r   rX  r   r  r   s     r   r   zClientHintIssueDetails.to_json~  sB    v%)%>%>%F%F%H!"(,(E(E(M(M(O$%r   c                n     | t         j                  |d         t        j                  |d               S )Nra  r  )rX  r  )rD  r   rL  r   s     r   r   z ClientHintIssueDetails.from_json  s7    !3!=!=dCW>X!Y%:%D%DTJaEb%c
 	
r   Nr   r&   r   r   r  r  t  s.     -,33 
 
r   r  c                  F    e Zd ZU ded<   ded<   dZded<   d Zed        Zy)	FailedRequestInfor   r)   failure_messageNr*   r+   c                    t               }| j                  |d<   | j                  |d<   | j                  | j                  j	                         |d<   |S )Nr)   failureMessager-   )r   r)   r  r+   r   r   s     r   r   zFailedRequestInfo.to_json  sM    vhhU!%!5!5??& $ 7 7 9Dr   c                     | t        |d         t        |d         d|v r't        j                  j                  |d               S d       S )Nr)   r  r-   )r)   r  r+   r/   r   s     r   r   zFailedRequestInfo.from_json  s[    DK %5 67ITX\I\w((2243DE
 	
 cg
 	
r   )r    r!   r"   r$   r+   r   r%   r   r&   r   r   r  r    s5     
H 59J29 
 
r   r  c                  6    e Zd ZdZdZdZdZdZd Ze	d        Z
y)	%SelectElementAccessibilityIssueReasonDisallowedSelectChildDisallowedOptGroupChildNonPhrasingContentOptionChildInteractiveContentOptionChildInteractiveContentLegendChildc                    | j                   S rG   rH   rJ   s    r   r   z-SelectElementAccessibilityIssueReason.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   z/SelectElementAccessibilityIssueReason.from_json  rM   r   N)r    r!   r"   DISALLOWED_SELECT_CHILDDISALLOWED_OPT_GROUP_CHILD!NON_PHRASING_CONTENT_OPTION_CHILD INTERACTIVE_CONTENT_OPTION_CHILD INTERACTIVE_CONTENT_LEGEND_CHILDr   r%   r   r&   r   r   r  r    s9    5!:(G%'F$'F$  r   r  c                  F    e Zd ZU dZded<   ded<   ded<   d Zed	        Zy
)&SelectElementAccessibilityIssueDetailszL
    This issue warns about errors in the select element content model.
    ru  node_idr  )select_element_accessibility_issue_reasonrR  has_disallowed_attributesc                    t               }| j                  j                         |d<   | j                  j                         |d<   | j                  |d<   |S )NnodeId%selectElementAccessibilityIssueReasonhasDisallowedAttributes)r   r  r   r  r  r   s     r   r   z.SelectElementAccessibilityIssueDetails.to_json  sO    v--/X8<8f8f8n8n8p45*.*H*H&'r   c                     | t         j                  j                  |d         t        j                  |d         t	        |d               S )Nr  r  r  )r  r  r  )r   rd  r   r  rR  r   s     r   r   z0SelectElementAccessibilityIssueDetails.from_json  sU    %%//X?6[6e6efj  lS  gT  7U&*40I+J&K
 	
r   Nr   r&   r   r   r  r    s4     /TT## 
 
r   r  c                  *    e Zd ZdZdZd Zed        Zy)StyleSheetLoadingIssueReasonLateImportRuleRequestFailedc                    | j                   S rG   rH   rJ   s    r   r   z$StyleSheetLoadingIssueReason.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   z&StyleSheetLoadingIssueReason.from_json  rM   r   N)r    r!   r"   LATE_IMPORT_RULEREQUEST_FAILEDr   r%   r   r&   r   r   r  r    s&    '$N  r   r  c                  J    e Zd ZU dZded<   ded<   dZded<   d	 Zed
        Zy)StylesheetLoadingIssueDetailszK
    This issue warns when a referenced stylesheet couldn't be loaded.
    rD  rX  r   style_sheet_loading_issue_reasonNz"typing.Optional[FailedRequestInfo]failed_request_infoc                    t               }| j                  j                         |d<   | j                  j                         |d<   | j                  | j                  j                         |d<   |S )Nra  styleSheetLoadingIssueReasonfailedRequestInfo)r   rX  r   r  r  r   s     r   r   z%StylesheetLoadingIssueDetails.to_json  sh    v%)%>%>%F%F%H!"/3/T/T/\/\/^+,##/(,(@(@(H(H(JD$%r   c                     | t         j                  |d         t        j                  |d         d|v rt        j                  |d               S d       S )Nra  r  r  )rX  r  r  )rD  r   r  r  r   s     r   r   z'StylesheetLoadingIssueDetails.from_json  sf    !3!=!=dCW>X!Y-I-S-STXYwTx-yZmquZu 1 ; ;DAT<U V
 	
 |@
 	
r   )	r    r!   r"   r#   r$   r  r   r%   r   r&   r   r   r   r     s@     -, 'CB ?C;B 
 
r   r   c                  2    e Zd ZdZdZdZdZd Zed        Z	y)PropertyRuleIssueReasonInvalidSyntaxInvalidInitialValueInvalidInheritsInvalidNamec                    | j                   S rG   rH   rJ   s    r   r   zPropertyRuleIssueReason.to_json  rK   r   c                     | |      S rG   r&   r   s     r   r   z!PropertyRuleIssueReason.from_json  rM   r   N)
r    r!   r"   INVALID_SYNTAXINVALID_INITIAL_VALUEINVALID_INHERITSINVALID_NAMEr   r%   r   r&   r   r   r  r    s1    $N1( L  r   r  c                  J    e Zd ZU dZded<   ded<   dZded<   d	 Zed
        Zy)PropertyRuleIssueDetailszp
    This issue warns about errors in property rules that lead to property
    registrations being ignored.
    rD  rX  r  property_rule_issue_reasonNr   property_valuec                    t               }| j                  j                         |d<   | j                  j                         |d<   | j                  | j                  |d<   |S )Nra  propertyRuleIssueReasonpropertyValue)r   rX  r   r  r  r   s     r   r   z PropertyRuleIssueDetails.to_json  s^    v%)%>%>%F%F%H!"*.*I*I*Q*Q*S&'*$($7$7D!r   c                     | t         j                  |d         t        j                  |d         d|v rt        |d               S d       S )Nra  r  r  )rX  r  r  )rD  r   r  r   r   s     r   r   z"PropertyRuleIssueDetails.from_json!  s\    !3!=!=dCW>X!Y'>'H'HNgIh'i9HD9P3tO45
 	
 W[
 	
r   )	r    r!   r"   r#   r$   r  r   r%   r   r&   r   r   r  r  
  s=    
 -, !87 ,0N(/ 
 
r   r  c                  ~    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZd Zed        Zy)InspectorIssueCodez
    A unique identifier for the type of issue. Each type may use one of the
    optional fields in InspectorIssueDetails to convey more specific
    information about the kind of issue.
    CookieIssueMixedContentIssueBlockedByResponseIssueHeavyAdIssueContentSecurityPolicyIssueSharedArrayBufferIssueLowTextContrastIssue	CorsIssueAttributionReportingIssueQuirksModeIssueNavigatorUserAgentIssueGenericIssueDeprecationIssueClientHintIssueFederatedAuthRequestIssueBounceTrackingIssueCookieDeprecationMetadataIssueStylesheetLoadingIssue!FederatedAuthUserInfoRequestIssuePropertyRuleIssueSharedDictionaryIssueSelectElementAccessibilityIssuec                    | j                   S rG   rH   rJ   s    r   r   zInspectorIssueCode.to_jsonG  rK   r   c                     | |      S rG   r&   r   s     r   r   zInspectorIssueCode.from_jsonJ  rM   r   N)r    r!   r"   r#   COOKIE_ISSUEMIXED_CONTENT_ISSUEBLOCKED_BY_RESPONSE_ISSUEHEAVY_AD_ISSUECONTENT_SECURITY_POLICY_ISSUESHARED_ARRAY_BUFFER_ISSUELOW_TEXT_CONTRAST_ISSUE
CORS_ISSUEATTRIBUTION_REPORTING_ISSUEQUIRKS_MODE_ISSUENAVIGATOR_USER_AGENT_ISSUEGENERIC_ISSUEDEPRECATION_ISSUECLIENT_HINT_ISSUEFEDERATED_AUTH_REQUEST_ISSUEBOUNCE_TRACKING_ISSUE!COOKIE_DEPRECATION_METADATA_ISSUESTYLESHEET_LOADING_ISSUE&FEDERATED_AUTH_USER_INFO_REQUEST_ISSUEPROPERTY_RULE_ISSUESHARED_DICTIONARY_ISSUE"SELECT_ELEMENT_ACCESSIBILITY_ISSUEr   r%   r   r&   r   r   r  r  *  s    
 !L- 8#N$@! 84J"=)!:"M*)#> 1(H%7-P*-5)J&  r   r  c                  \   e Zd ZU dZdZded<   dZded<   dZded<   dZd	ed
<   dZ	ded<   dZ
ded<   dZded<   dZded<   dZded<   dZded<   dZded<   dZded<   dZded<   dZded<   dZded <   dZd!ed"<   dZd#ed$<   dZd%ed&<   dZd'ed(<   dZd)ed*<   dZd+ed,<   dZd-ed.<   d/ Zed0        Zy)1InspectorIssueDetailsz
    This struct holds a list of optional fields with additional information
    specific to the kind of issue. When adding a new issue code, please also
    add a new optional field to this type.
    Nz#typing.Optional[CookieIssueDetails]cookie_issue_detailsz)typing.Optional[MixedContentIssueDetails]mixed_content_issue_detailsz.typing.Optional[BlockedByResponseIssueDetails]!blocked_by_response_issue_detailsz$typing.Optional[HeavyAdIssueDetails]heavy_ad_issue_detailsz2typing.Optional[ContentSecurityPolicyIssueDetails]%content_security_policy_issue_detailsz.typing.Optional[SharedArrayBufferIssueDetails]!shared_array_buffer_issue_detailsz,typing.Optional[LowTextContrastIssueDetails]low_text_contrast_issue_detailsz!typing.Optional[CorsIssueDetails]cors_issue_detailsz1typing.Optional[AttributionReportingIssueDetails]#attribution_reporting_issue_detailsz'typing.Optional[QuirksModeIssueDetails]quirks_mode_issue_detailsz/typing.Optional[NavigatorUserAgentIssueDetails]"navigator_user_agent_issue_detailsz$typing.Optional[GenericIssueDetails]generic_issue_detailsz(typing.Optional[DeprecationIssueDetails]deprecation_issue_detailsz'typing.Optional[ClientHintIssueDetails]client_hint_issue_detailsz1typing.Optional[FederatedAuthRequestIssueDetails]$federated_auth_request_issue_detailsz+typing.Optional[BounceTrackingIssueDetails]bounce_tracking_issue_detailsz6typing.Optional[CookieDeprecationMetadataIssueDetails])cookie_deprecation_metadata_issue_detailsz.typing.Optional[StylesheetLoadingIssueDetails] stylesheet_loading_issue_detailsz)typing.Optional[PropertyRuleIssueDetails]property_rule_issue_detailsz9typing.Optional[FederatedAuthUserInfoRequestIssueDetails].federated_auth_user_info_request_issue_detailsz-typing.Optional[SharedDictionaryIssueDetails]shared_dictionary_issue_detailsz7typing.Optional[SelectElementAccessibilityIssueDetails]*select_element_accessibility_issue_detailsc                &   t               }| j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j
                  | j
                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d	<   | j                  | j                  j                         |d
<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j                  | j                  j                         |d<   | j                   | j                   j                         |d<   | j"                  | j"                  j                         |d<   | j$                  | j$                  j                         |d<   | j&                  | j&                  j                         |d<   | j(                  | j(                  j                         |d<   | j*                  | j*                  j                         |d<   | j,                  | j,                  j                         |d<   | j.                  | j.                  j                         |d<   |S )NcookieIssueDetailsmixedContentIssueDetailsblockedByResponseIssueDetailsheavyAdIssueDetails!contentSecurityPolicyIssueDetailssharedArrayBufferIssueDetailslowTextContrastIssueDetailscorsIssueDetails attributionReportingIssueDetailsquirksModeIssueDetailsnavigatorUserAgentIssueDetailsgenericIssueDetailsdeprecationIssueDetailsclientHintIssueDetails federatedAuthRequestIssueDetailsbounceTrackingIssueDetails%cookieDeprecationMetadataIssueDetailsstylesheetLoadingIssueDetailspropertyRuleIssueDetails(federatedAuthUserInfoRequestIssueDetailssharedDictionaryIssueDetails&selectElementAccessibilityIssueDetails)r   rM  r   rN  rO  rP  rQ  rR  rS  rT  rU  rV  rW  rX  rY  rZ  r[  r\  r]  r^  r_  r`  ra  rb  r   s     r   r   zInspectorIssueDetails.to_json  sR   v$$0)-)B)B)J)J)LD%&++7/3/O/O/W/W/YD+,11=484Z4Z4b4b4dD01&&2*.*E*E*M*M*OD&'55A8<8b8b8j8j8lD4511=484Z4Z4b4b4dD01//;262V2V2^2^2`D./"".'+'>'>'F'F'HD#$33?7;7_7_7g7g7iD34))5-1-K-K-S-S-UD)*22>595\5\5d5d5fD12%%1*.*D*D*L*L*ND&'))5.2.L.L.T.T.VD*+))5-1-K-K-S-S-UD)*44@7;7`7`7h7h7jD34--9151S1S1[1[1]D-.99E<@<j<j<r<r<tD8900<484Y4Y4a4a4cD01++7/3/O/O/W/W/YD+,>>J?C?r?r?z?z?|D;<//;373W3W3_3_3aD/0::F=A=l=l=t=t=vD9:r   c           	     f    | d-i dd|v rt         j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd d	d
|v rt
        j                  |d
         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd|v rt        j                  |d         nd dd |v rt         j                  |d          nd d!d"|v rt"        j                  |d"         nd d#d$|v rt$        j                  |d$         nd d%d&|v rt&        j                  |d&         nd d'd(|v rt(        j                  |d(         nd d)d*|v rt*        j                  |d*         nd d+d,|v rt,        j                  |d,         S d S ).NrM  rd  rN  re  rO  rf  rP  rg  rQ  rh  rR  ri  rS  rj  rT  rk  rU  rl  rV  rm  rW  rn  rX  ro  rY  rp  rZ  rq  r[  rr  r\  rs  r]  rt  r^  ru  r_  rv  r`  rw  ra  rx  rb  ry  r&   )r   r   r   r  r.  rP  rn  rt  r  r  r  r	  r-  r5  r  rT  r;  rB  r   r  r  r  r  r   s     r   r   zInspectorIssueDetails.from_json  s    
]quy]y!3!=!=dCW>X!Y  @D
 qK  OS  qS(@(J(J4PjKk(l  Y]
 A`  dh  Ah.K.U.UVZ[zV{.|  nr
 bwz~a~#6#@#@F[A\#]  EI	

 Mp  tx  Mx2S2]2]^b  dG  _H  3I  ~B
 A`  dh  Ah.K.U.UVZ[zV{.|  nr
 {X  \`  {`,G,Q,QRVWtRu,v  fj
 XjmqWq/99$?Q:RSw{
 Ik  os  Is0P0Z0Z[_  aC  \D  1E  y}
 kC  GK  kK&<&F&FtLdGe&f  QU
 Dd  hl  Dl/M/W/WX\]}X~/  rv
 avy}`}"5"?"?EZ@["\  DH
 mF  JN  mN&=&G&GMfHg&h  TX
 kC  GK  kK&<&F&FtLdGe&f  QU
 Jl  pt  Jt1Q1[1[\`  bD  ]E  2F  z~
  wS  W[  w[*D*N*NtTpOq*r  ae!
" Y@  DH  YH6[6e6efj  lS  gT  7U  NR#
$ @_  cg  @g-J-T-TUYZyUz-{  mq%
& qK  OS  qS(@(J(J4PjKk(l  Y]'
( dN  RV  dV;c;m;mnr  t^  o_  <`  \`)
* }[  _c  }c,H,R,RSWXvSw,x  im+
, \D  HL  \L7]7g7ghl  nV  iW  8X-
 	
, RV-
 	
r   )r    r!   r"   r#   rM  r$   rN  rO  rP  rQ  rR  rS  rT  rU  rV  rW  rX  rY  rZ  r[  r\  r]  r^  r_  r`  ra  rb  r   r%   r   r&   r   r   rL  rL  O  s-   
 AE=DMQ!JQX\%'U\CG@G`d)+]dX\%'U\TX#%QX<@9@]a')ZaIMFMZ^&(W^BF?FJNGNIMFM^b(*[bQU!#NUhl-/elW[$&T[MQ!JQpt24mtUY#%RYjn.0gn.` 
 
r   rL  c                  <     e Zd ZdZddZedd       Z fdZ xZS )IssueIdz
    A unique id for a DevTools inspector issue. Allows other entities (e.g.
    exceptions, CDP message, console messages, etc.) to reference an issue.
    c                    | S rG   r&   rJ   s    r   r   zIssueId.to_json  s    r   c                     | |      S rG   r&   r   s     r   r   zIssueId.from_json  rM   r   c                >    dj                  t        | 	               S )NzIssueId({}))formatsuper__repr__)r   	__class__s    r   r  zIssueId.__repr__  s    ##EG$4$677r   )returnr   )r   r   r  r|  )	r    r!   r"   r#   r   r%   r   r  __classcell__)r  s   @r   r|  r|    s+      8 8r   r|  c                  J    e Zd ZU dZded<   ded<   dZded<   d	 Zed
        Zy)InspectorIssuez8
    An inspector issue reported from the back-end.
    r  coderL  detailsNztyping.Optional[IssueId]issue_idc                    t               }| j                  j                         |d<   | j                  j                         |d<   | j                  | j                  j                         |d<   |S )Nr  r  issueId)r   r  r   r  r  r   s     r   r   zInspectorIssue.to_json  sZ    vyy((*V,,..0Y==$"mm335DOr   c                     | t         j                  |d         t        j                  |d         d|v rt        j                  |d               S d       S )Nr  r  r  )r  r  r  )r  r   rL  r|  r   s     r   r   zInspectorIssue.from_json  s]    #--d6l;)33DOD;D;LW&&tI7
 	
 SW
 	
r   )	r    r!   r"   r#   r$   r  r   r%   r   r&   r   r   r  r    s;     "" *.H&- 
 
r   r  c              #     K   t               }| j                         |d<   ||d<   |||d<   |||d<   d|d}|}d|v rt        |d         ndt        |d	         t        |d
         fS w)a  
    Returns the response body and size if it were re-encoded with the specified settings. Only
    applies to images.

    :param request_id: Identifier of the network request to get content for.
    :param encoding: The encoding to use.
    :param quality: *(Optional)* The quality of the encoding (0-1). (defaults to 1)
    :param size_only: *(Optional)* Whether to only return the size information (defaults to false).
    :returns: A tuple with the following items:

        0. **body** - *(Optional)* The encoded body as a base64 string. Omitted if sizeOnly is true.
        1. **originalSize** - Size before re-encoding.
        2. **encodedSize** - Size after re-encoding.
    r-   encodingNqualitysizeOnlyzAudits.getEncodedResponsemethodparamsbodyoriginalSizeencodedSize)r   r   r   rE  )r+   r  r  	size_onlyr  cmd_dictr   s          r   get_encoded_responser    s     ( &F$,,.F;!F:#y&z-H >D#t^DLD !D  s   A)A+c               #     K   ddi} | }yw)z\
    Disables issues domain, prevents further issues from being reported to the client.
    r  zAudits.disableNr&   r  r   s     r   disabler  #  s     
 	"H >D   
c               #     K   ddi} | }yw)zz
    Enables issues domain, sends the issues collected so far to the client by means of the
    ``issueAdded`` event.
    r  zAudits.enableNr&   r  s     r   enabler  -  s      	/H >Dr  c              #  @   K   t               }| | |d<   d|d}|}yw)z
    Runs the contrast check for the target page. Found issues are reported
    using Audits.issueAdded event.

    :param report_aaa: *(Optional)* Whether to report WCAG AAA level issues. Default is false.
    N	reportAAAzAudits.checkContrastr  )r   )
report_aaar  r  r   s       r   check_contrastr  8  s5      &F({(H >Ds   c               #  p   K   ddi} | }|d   D cg c]  }t         j                  |       c}S c c}w w)z
    Runs the form issues check for the target page. Found issues are reported
    using Audits.issueAdded event.

    :returns: 
    r  zAudits.checkFormsIssues
formIssues)r-  r   )r  r   r   s      r   check_forms_issuesr  K  sC      	+H >D6:<6HI))!,IIIs   616zAudits.issueAddedc                  *    e Zd ZU ded<   edd       Zy)
IssueAddedr  issuec                @     | t         j                  |d               S )Nr  )r  )r  r   r   s     r   r   zIssueAdded.from_json^  s!     **4=9
 	
r   N)r   r   r  r  )r    r!   r"   r$   r%   r   r&   r   r   r  r  Y  s     
 
r   r  )NN)
r+   znetwork.RequestIdr  r   r  ztyping.Optional[float]r  typing.Optional[bool]r  zXtyping.Generator[T_JSON_DICT, T_JSON_DICT, typing.Tuple[typing.Optional[str], int, int]])r  0typing.Generator[T_JSON_DICT, T_JSON_DICT, None]rG   )r  r  r  r  )r  zLtyping.Generator[T_JSON_DICT, T_JSON_DICT, typing.List[GenericIssueDetails]])J
__future__r   utilr   r   dataclassesr   enumtyping r   r	   r
   r   r   r(   r2   Enumr:   rZ   rz   r   r   r   r   r   r   r   r  r  r$  r.  r4  rD  rP  rf  rn  rt  r  r  r  r  r  r	  r  r  r-  r5  r;  rB  rL  rT  rU  r  r  r  r  r  r  r  r   r  r  r  rL  r   r|  r  r  r  r  r  r  r  r&   r   r   <module>r     s   # * !       
 
 
6 
 
 
0 
 
 
$DII *$)) 0	dii 	$))   
 
 
0 >
 >
 >
B
499 
$tyy $N -
 -
 -
`dii , 
 
 
D	dii 	
DII 
 
 
 
4   
 
 
8 *
 *
 *
Z	 	 
 
 
6 $
 $
 $
N ,
 ,
 ,
^DII >DII B 
 
 
D "
 "
 "
J 
 
 
( 
 
 
&DII * $
 $
 $
N 
 
 
: 
 
 
, 
 
 
D	DII 	 
 
 
;dii ;| 
 
 
dii 0 
 
 
. 
 
 
4DII  
 
 
4	499 	 
 
 
<dii  
 
 
>" "J {
 {
 {
|8c 8  
 
 
@ +/+/	$%$$ ($ )	$
 
`$N -1)	7&J  !

 
  "
r   