Files
loustique-home/venv/lib/python3.11/site-packages/werkzeug/__pycache__/urls.cpython-311.pyc

79 lines
8.8 KiB
Plaintext
Raw Normal View History

2026-03-21 10:53:02 +01:00
<EFBFBD>
<00><><EFBFBD>i<00><01><><00>ddlmZddlZddlZddlZddlZddlmZddlm Z ddlm
Z
ddlm Z ddlm Z dd l mZd(d<0E>Zejde<0F><00>d)d<14>Zeged<15><00><00>d<16>d<17>R<00><00><00><00><00>Zede<15><00>Zededz<00><00>Zededz<00><00>Zededz<00><00>Zd*d <20>Zd+d"<22>Zd#ejjvrejj<00>d#<23><00>d,d%<25>Zd-d'<27>Z dS).<2E>)<01> annotationsN)<01>quote)<01>unquote)<01> urlencode)<01>urlsplit)<01>
urlunsplit<EFBFBD>)<01>iter_multi_items<6D>e<> UnicodeError<6F>return<72>tuple[str, int]c<01>d<00>t|j|j|j<00>d<01><02><00>}||jfS)zRUsed in :func:`uri_to_iri` after unquoting to re-quote any
invalid bytes.
<20><00><01>safe)r<00>object<63>start<72>end)r <00>outs <20>Y/home/maxime/Documents/loustiques-home/venv/lib/python3.11/site-packages/werkzeug/urls.py<70>_codec_error_url_quoters1<00><00> <10><01><08><11><17>1<EFBFBD>5<EFBFBD><1F>)<29><02>
3<EFBFBD>
3<EFBFBD>
3<EFBFBD>C<EFBFBD> <0E><01><05>:<3A><15><00>werkzeug.url_quote<74>name<6D>str<74>chars<72>t.Callable[[str], str]c<01><><00><04>d<01>d<02>t|<01><00>D<00><00><00><00>}tjd|<02>d<04>tj<00><00><00>d
<EFBFBD>fd<08> }d |<00><00>|_|S) z<>Create a function that unquotes all percent encoded characters except those
given. This allows working with unquoted characters if possible while not changing
the meaning of a given part of a URL.
<20>|c3<01>8K<00>|]}t|<01><00>d<00>V<00><00>dS)<02>02XN)<01>ord)<02>.0<EFBFBD>cs r<00> <genexpr>z%_make_unquote_part.<locals>.<genexpr>"s,<00><00><00><00>><3E>><3E>1<EFBFBD>#<23>a<EFBFBD>&<26>&<26><EFBFBD><EFBFBD>><3E>><3E>><3E>><3E>><3E>>rz((?:%(?:z))+)<29>valuerr c<01><00><01>t<00><04>|<00><00><00><00>}g}|D]I}|<02>t|dd<02><00><00><00>|<02>t |d<03><00><00><00><00>Jd<03>|<02><00>S)Nzutf-8rr)<06>iter<65>split<69>appendr<00>next<78>join)r'<00>partsr<00>part<72>patterns <20>r<00>_unquote_partialz,_make_unquote_part.<locals>._unquote_partial%s|<00><><00><14>W<EFBFBD>]<5D>]<5D>5<EFBFBD>)<29>)<29>*<2A>*<2A><05><10><03><19> (<28> (<28>D<EFBFBD> <0F>J<EFBFBD>J<EFBFBD>w<EFBFBD>t<EFBFBD>W<EFBFBD>.B<>C<>C<> D<> D<> D<> <0F>J<EFBFBD>J<EFBFBD>t<EFBFBD>E<EFBFBD>2<EFBFBD><EFBFBD><EFBFBD> '<27> '<27> '<27> '<27><11>w<EFBFBD>w<EFBFBD>s<EFBFBD>|<7C>|<7C>r<00> _unquote_)r'rr r)r-<00>sorted<65>re<72>compile<6C>I<>__name__)rr<00>choicesr1r0s @r<00>_make_unquote_partr9s<><00><><00>
<12>h<EFBFBD>h<EFBFBD>><3E>><3E><06>u<EFBFBD> <0A> <0A>><3E>><3E>><3E>><3E>><3E>G<EFBFBD><10>j<EFBFBD>1<>G<EFBFBD>1<>1<>1<>2<EFBFBD>4<EFBFBD>8<>8<>G<EFBFBD><1C><1C><1C><1C><1C><1C>!3<>D<EFBFBD> 2<> 2<><14><1D> <1B>r<00>!<00>%<00><00>fragment<6E>queryz&=+#<23>pathz/?#<23>userz:@/?#<23>uric<01><><00>t|<00><00>}t|j<00><00>}t|j<00><00>}t |j<00><00>}|jrt|j<00><00>}nd}d|vrd|<05>d<04>}|j r |<05>d|j <00><00>}|j
r=t|j
<00><00>}|j rt|j <00><00>}|<06>d|<07><00>}|<06>d|<05><00>}t|j||||f<05><00>S)a-Convert a URI to an IRI. All valid UTF-8 characters are unquoted,
leaving all reserved and invalid characters quoted. If the URL has
a domain, it is decoded from Punycode.
>>> uri_to_iri("http://xn--n3h.net/p%C3%A5th?q=%C3%A8ry%DF")
'http://\u2603.net/p\xe5th?q=\xe8ry%DF'
:param uri: The URI to convert.
.. versionchanged:: 3.0
Passing a tuple or bytes, and the ``charset`` and ``errors`` parameters,
are removed.
.. versionchanged:: 2.3
Which characters remain quoted is specific to each part of the URL.
.. versionchanged:: 0.15
All reserved and invalid characters remain quoted. Previously,
only some reserved characters were preserved, and invalid bytes
were replaced instead of left quoted.
.. versionadded:: 0.6
r<00>:<3A>[<5B>]<5D>@)r<00> _unquote_pathr?<00>_unquote_queryr><00>_unquote_fragmentr=<00>hostname<6D> _decode_idna<6E>port<72>username<6D> _unquote_user<65>passwordr<00>scheme)rAr.r?r>r=<00>netloc<6F>authrOs r<00>
uri_to_irirS=s<00><00>0 <15>S<EFBFBD>M<EFBFBD>M<EFBFBD>E<EFBFBD> <18><15><1A> $<24> $<24>D<EFBFBD> <1A>5<EFBFBD>;<3B> '<27> '<27>E<EFBFBD> <20><15><1E>0<>0<>H<EFBFBD> <0C>~<7E><14><1D>e<EFBFBD>n<EFBFBD>-<2D>-<2D><06><06><13><06>
<EFBFBD>f<EFBFBD>}<7D>}<7D><1E>V<EFBFBD><1D><1D><1D><06> <0C>z<EFBFBD>*<2A><1A>)<29>)<29>U<EFBFBD>Z<EFBFBD>)<29>)<29><06> <0C>~<7E>$<24><1C>U<EFBFBD>^<5E>,<2C>,<2C><04> <10>><3E> (<28>$<24>U<EFBFBD>^<5E>4<>4<>H<EFBFBD><1A>'<27>'<27>X<EFBFBD>'<27>'<27>D<EFBFBD><18>#<23>#<23>6<EFBFBD>#<23>#<23><06> <15>u<EFBFBD>|<7C>V<EFBFBD>T<EFBFBD>5<EFBFBD>(<28>C<> D<> D<>Dr<00>iric<01><00>t|<00><00>}t|jd<01><02><00>}t|jd<03><02><00>}t|jd<04><02><00>}|jr.|j<00>d<05><00><00>d<06><00>}nd}d|vrd |<05>d
<EFBFBD>}|jr |<05>d|j<00><00>}|j rAt|j d <0B><02><00>}|j
rt|j
d <0B><02><00>}|<06>d|<07><00>}|<06>d |<05><00>}t|j ||||f<05><00>S) a,Convert an IRI to a URI. All non-ASCII and unsafe characters are
quoted. If the URL has a domain, it is encoded to Punycode.
>>> iri_to_uri('http://\u2603.net/p\xe5th?q=\xe8ry%DF')
'http://xn--n3h.net/p%C3%A5th?q=%C3%A8ry%DF'
:param iri: The IRI to convert.
.. versionchanged:: 3.0
Passing a tuple or bytes, the ``charset`` and ``errors`` parameters,
and the ``safe_conversion`` parameter, are removed.
.. versionchanged:: 2.3
Which characters remain unquoted is specific to each part of the URL.
.. versionchanged:: 0.15
All reserved characters remain unquoted. Previously, only some reserved
characters were left unquoted.
.. versionchanged:: 0.9.6
The ``safe_conversion`` parameter was added.
.. versionadded:: 0.6
z%!$&'()*+,/:;=@rz%!$&'()*+,/:;=?@z%!#$&'()*+,/:;=?@<40>idna<6E>asciirrCrDrEz %!$&'()*+,;=rF) rrr?r>r=rJ<00>encode<64>decoderLrMrOrrP)rTr.r?r>r=rQrRrOs r<00>
iri_to_urirZqs6<00><00>2 <15>S<EFBFBD>M<EFBFBD>M<EFBFBD>E<EFBFBD> <11><15><1A>"3<> 4<> 4<> 4<>D<EFBFBD> <11>%<25>+<2B>$6<> 7<> 7<> 7<>E<EFBFBD><14>U<EFBFBD>^<5E>*=<3D>><3E>><3E>><3E>H<EFBFBD> <0C>~<7E><14><16><1E>&<26>&<26>v<EFBFBD>.<2E>.<2E>5<>5<>g<EFBFBD>><3E>><3E><06><06><13><06>
<EFBFBD>f<EFBFBD>}<7D>}<7D><1E>V<EFBFBD><1D><1D><1D><06> <0C>z<EFBFBD>*<2A><1A>)<29>)<29>U<EFBFBD>Z<EFBFBD>)<29>)<29><06> <0C>~<7E>$<24><14>U<EFBFBD>^<5E>.<2E>9<>9<>9<><04> <10>><3E> (<28><1C>U<EFBFBD>^<5E>.<2E>A<>A<>A<>H<EFBFBD><1A>'<27>'<27>X<EFBFBD>'<27>'<27>D<EFBFBD><18>#<23>#<23>6<EFBFBD>#<23>#<23><06> <15>u<EFBFBD>|<7C>V<EFBFBD>T<EFBFBD>5<EFBFBD>(<28>C<> D<> D<>Drz itms-services<65>domainc<01><><00> |<00>d<01><00>}n#t$r|cYSwxYw |<01>d<02><00>S#t$rYnwxYwg}|<01>d<03><00>D]c} |<02>|<03>d<02><00><00><00><00>,#t$r+|<02>|<03>d<01><00><00><00>Y<00>`wxYwd<04>|<02><00>S)NrWrV<00>.<2E>.)rX<00>UnicodeEncodeErrorrY<00>UnicodeDecodeErrorr*r+r-)r[<00>datar.r/s rrKrK<00>s<00><00><16><15>}<7D>}<7D>W<EFBFBD>%<25>%<25><04><04><> <1D><16><16><16><15> <0A> <0A> <0A><16><><EFBFBD><EFBFBD> <0A><13>{<7B>{<7B>6<EFBFBD>"<22>"<22>"<22><> <1D> <0A> <0A> <0A> <0C><04> <0A><><EFBFBD><EFBFBD> <0F>E<EFBFBD><14>
<EFBFBD>
<EFBFBD>4<EFBFBD> <20> <20>/<2F>/<2F><04> /<2F> <11>L<EFBFBD>L<EFBFBD><14><1B><1B>V<EFBFBD>,<2C>,<2C> -<2D> -<2D> -<2D> -<2D><>!<21> /<2F> /<2F> /<2F> <11>L<EFBFBD>L<EFBFBD><14><1B><1B>W<EFBFBD>-<2D>-<2D> .<2E> .<2E> .<2E> .<2E> .<2E> /<2F><><EFBFBD><EFBFBD> <0F>8<EFBFBD>8<EFBFBD>E<EFBFBD>?<3F>?<3F>s/<00><00> '<03>'<03>A<00>
A <03> A <03>*(B<02>2C<05>C<05>1t.Mapping[str, str] | t.Iterable[tuple[str, str]]c<01>V<00>d<01>t|<00><00>D<00><00>}t|d<02><03><00>S)Nc<01>"<00>g|] }|d<00>
|<01><02> S)r <00>)r$<00>xs r<00>
<listcomp>z_urlencode.<locals>.<listcomp><3E>s!<00><00> D<> D<> D<>1<EFBFBD>1<EFBFBD>Q<EFBFBD>4<EFBFBD>3C<33>Q<EFBFBD>3C<33>3C<33>3Crz !$'()*,/:;?@r)r
r)r><00>itemss r<00>
_urlencoderi<00>s1<00><00> D<> D<>(<28><15>/<2F>/<2F> D<> D<> D<>E<EFBFBD> <14>U<EFBFBD><1E> 0<> 0<> 0<>0r)r r r r)rrrrr r)rArr r)rTrr r)r[rr r)r>rbr r)!<21>
__future__r<00>codecsr4<00>typing<6E>t<> urllib.parse<73>urllibrrrrr<00>datastructuresr
r<00>register_errorr9<00>bytes<65>rangerY<00>_always_unsaferIrHrGrNrSrZ<00>parse<73> uses_netlocr+rKrirerr<00><module>rws <00><01>"<22>"<22>"<22>"<22>"<22>"<22> <0A> <0A> <0A> <0A> <09> <09> <09> <09><12><12><12><12><13><13><13><13><1E><1E><1E><1E><1E><1E> <20> <20> <20> <20> <20> <20>"<22>"<22>"<22>"<22>"<22>"<22>!<21>!<21>!<21>!<21>!<21>!<21>#<23>#<23>#<23>#<23>#<23>#<23>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C><16><16><16><16><16><06><15>*<2A>,B<>C<>C<>C<><1C><1C><1C><1C>2<17><15>1<><15><15>t<EFBFBD><1B><1B>1<>d<EFBFBD>1<>D<EFBFBD>1<>1<>2<>2<>9<>9<>;<3B>;<3B><0E>&<26>&<26>z<EFBFBD>><3E>B<>B<><11>#<23>#<23>G<EFBFBD>^<5E>f<EFBFBD>-D<>E<>E<><0E>"<22>"<22>6<EFBFBD>><3E>E<EFBFBD>+A<>B<>B<> <0A>"<22>"<22>6<EFBFBD>><3E>G<EFBFBD>+C<>D<>D<> <0A>1E<01>1E<01>1E<01>1E<01>h4E<01>4E<01>4E<01>4E<01>t<13>&<26>,<2C>2<>2<>2<>
<EFBFBD>L<EFBFBD><1C>#<23>#<23>O<EFBFBD>4<>4<>4<><1B><1B><1B><1B>21<>1<>1<>1<>1<>1r