ó
    pñ:iè  ã                  óZ   • S SK Jr  S SKJr  S SKrSSKJr  SS jr	 " S S\\
\
4   5      rg)	é    )ÚannotationsNé   )ÚCallbackDictc                ó@   ^ • [        U 4S jU 4S jU 4S jST < 35      $ )zˆReturn a new property object for a content security policy header.
Useful if you want to add support for a csp extension in a
subclass.
c                ó&   >• U R                  T5      $ ©N)Ú
_get_value©ÚxÚkeys    €Ú^/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/werkzeug/datastructures/csp.pyÚ<lambda>Úcsp_property.<locals>.<lambda>   ó   ø€ �!—,‘,˜sÔ#ó    c                ó(   >• U R                  TU5      $ r   )Ú
_set_value)r   Úvr   s     €r   r   r      s   ø€ �Q—\‘\ # qÔ)r   c                ó&   >• U R                  T5      $ r   )Ú
_del_valuer
   s    €r   r   r      r   r   zaccessor for )Úproperty)r   s   `r   Úcsp_propertyr   	   s%   ø€ ô
 Ü#Ü)Ü#Ø
˜‘wÐó	ð r   c                  ó
  ^ • \ rS rSr% Sr\" S5      rS\S'   \" S5      rS\S'   \" S5      r	S\S	'   \" S
5      r
S\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S5      rS\S'   \" S 5      rS\S!'   \" S"5      rS\S#'   \" S$5      rS\S%'   \" S&5      rS\S&'   \" S'5      rS\S('   \" S)5      rS\S*'   \" S+5      rS\S,'   \" S-5      rS\S.'   \" S/5      rS\S0'   \" S15      rS\S2'   \" S35      rS\S4'     S=     S>U 4S5 jjjr S?S6 jr!S@S7 jr"SAS8 jr#SBS9 jr$SBS: jr%SBS; jr&S<r'U =r($ )CÚContentSecurityPolicyé   a.  Subclass of a dict that stores values for a Content Security Policy
header. It has accessors for all the level 3 policies.

Because the csp directives in the HTTP header use dashes the
python descriptors use underscores for that.

To get a header of the :class:`ContentSecuirtyPolicy` object again
you can convert the object into a string or call the
:meth:`to_header` method.  If you plan to subclass it and add your
own items have a look at the sourcecode for that class.

.. versionadded:: 1.0.0
   Support for Content Security Policy headers was added.

zbase-uriú
str | NoneÚbase_uriz	child-srcÚ	child_srczconnect-srcÚconnect_srczdefault-srcÚdefault_srczfont-srcÚfont_srczform-actionÚform_actionzframe-ancestorsÚframe_ancestorsz	frame-srcÚ	frame_srczimg-srcÚimg_srczmanifest-srcÚmanifest_srcz	media-srcÚ	media_srcznavigate-toÚnavigate_toz
object-srcÚ
object_srczprefetch-srcÚprefetch_srczplugin-typesÚplugin_typesz	report-toÚ	report_toz
report-uriÚ
report_uriÚsandboxz
script-srcÚ
script_srczscript-src-attrÚscript_src_attrzscript-src-elemÚscript_src_elemz	style-srcÚ	style_srczstyle-src-attrÚstyle_src_attrzstyle-src-elemÚstyle_src_elemz
worker-srcÚ
worker_srcc                ó6   >• [         TU ]  X5        US LU l        g r   )ÚsuperÚ__init__Úprovided)ÚselfÚvaluesÚ	on_updateÚ	__class__s      €r   r8   ÚContentSecurityPolicy.__init__A   s   ø€ ô
 	‰Ñ˜Ô+Ø dÐ*ˆ�r   c                ó$   • U R                  U5      $ )ú+Used internally by the accessor properties.)Úget©r:   r   s     r   r	   Ú ContentSecurityPolicy._get_valueI   s   € à�x‰x˜‹}Ðr   c                ó8   • Uc  U R                  US5        gX U'   g©r@   N)Úpop)r:   r   Úvalues      r   r   Ú ContentSecurityPolicy._set_valueM   s   € à‰=Ø�H‰H�S˜$Õà�ŠIr   c                ó   • X;   a  X	 ggrE   © rB   s     r   r   Ú ContentSecurityPolicy._del_valueT   s   € à‹;Ø‘	ð r   c                ó   • SSK Jn  U" U 5      $ )z6Convert the stored values into a cache control header.é   )Údump_csp_header)ÚhttprN   )r:   rN   s     r   Ú	to_headerÚContentSecurityPolicy.to_headerY   s   € å*á˜tÓ$Ð$r   c                ó"   • U R                  5       $ r   )rP   )r:   s    r   Ú__str__ÚContentSecurityPolicy.__str___   s   € Ø�~‰~ÓÐr   c                ó˜   • SR                  S [        U R                  5       5       5       5      nS[        U 5      R                   SU S3$ )NÚ c              3  ó6   #   • U  H  u  pU S U< 3v •  M     g7f)Ú=NrJ   )Ú.0Úkr   s      r   Ú	<genexpr>Ú1ContentSecurityPolicy.__repr__.<locals>.<genexpr>c   s   é € ÐHÒ3G©4¨1˜Q˜C˜q ¡�,Ò3Gùs   ‚Ú<Ú>)ÚjoinÚsortedÚitemsÚtypeÚ__name__)r:   Úkv_strs     r   Ú__repr__ÚContentSecurityPolicy.__repr__b   sA   € Ø—‘ÑH´6¸$¿*¹*»,Ô3GÓHÓHˆØ”4˜“:×&Ñ&Ð' q¨¨°Ð2Ð2r   )r9   )rJ   N)r;   z>cabc.Mapping[str, str] | cabc.Iterable[tuple[str, str]] | Noner<   z3cabc.Callable[[ContentSecurityPolicy], None] | NoneÚreturnÚNone)r   Ústrrg   r   )r   ri   rG   r   rg   rh   )r   ri   rg   rh   )rg   ri   ))rc   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   Ú__annotations__r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r8   r	   r   r   rP   rS   re   Ú__static_attributes__Ú__classcell__)r=   s   @r   r   r      sÚ  ø‡ ññ  (¨
Ó3€HˆjÓ3Ù(¨Ó5€IˆzÓ5Ù*¨=Ó9€K�Ó9Ù*¨=Ó9€K�Ó9Ù'¨
Ó3€HˆjÓ3Ù*¨=Ó9€K�Ó9Ù".Ð/@Ó"A€O�ZÓAÙ(¨Ó5€IˆzÓ5Ù& yÓ1€GˆZÓ1Ù+¨NÓ;€L�*Ó;Ù(¨Ó5€IˆzÓ5Ù*¨=Ó9€K�Ó9Ù)¨,Ó7€J�
Ó7Ù+¨NÓ;€L�*Ó;Ù+¨NÓ;€L�*Ó;Ù(¨Ó5€IˆzÓ5Ù)¨,Ó7€J�
Ó7Ù& yÓ1€GˆZÓ1Ù)¨,Ó7€J�
Ó7Ù".Ð/@Ó"A€O�ZÓAÙ".Ð/@Ó"A€O�ZÓAÙ(¨Ó5€IˆzÓ5Ù!-Ð.>Ó!?€N�JÓ?Ù!-Ð.>Ó!?€N�JÓ?Ù)¨,Ó7€J�
Ó7ð RTØIMð+àNð+ð Gð+ð 
÷	+ð +ôôôô
%ô ÷3ò 3r   r   )r   ri   rg   zt.Any)Ú
__future__r   Úcollections.abcÚabcÚcabcÚtypingÚtÚ
structuresr   r   ri   r   rJ   r   r   Ú<module>rx      s-   ðÝ "å Û å $ô
ôN3˜L¨¨c¨Ñ2õ N3r   