
    h`                     t    S r SSKJr  SSKJr  SSKJr  SSKJr  SSK	J
r
  SS jrSS	 jrSS
 jr\" \\5      rg)zN
Provide urlresolver functions that return fully qualified URLs or view names
    )NoReverseMatch)reverse)lazy)api_settings)replace_query_paramNc                     Uc  U $ [         R                  /nU H8  nU(       d  M  X1R                  ;   d  M  UR                  U   n[        XU5      n M:     U $ )zs
Given an incoming request, and an outgoing URL representation,
append the value of any built-in query parameters.
)r   URL_FORMAT_OVERRIDEGETr   )urlrequest	overridesparamvalues        H/var/www/html/env/lib/python3.13/site-packages/rest_framework/reverse.pypreserve_builtin_query_paramsr      s[    
 
 	((I 5e{{*KK&E%c%8C 
 J    c                     [        USS5      nUb   UR                  " XX#U40 UD6nO[        XX#U40 UD6n[	        Xs5      $ ! [         a    [        XX#U40 UD6n N%f = f)z
If versioning is being used then we pass any `reverse` calls through
to the versioning scheme instance, so that the resulting URL
can be modified if needed.
versioning_schemeN)getattrr   r   _reverser   )viewnameargskwargsr   formatextraschemer   s           r   r   r       s~     W148F	M..&RERC xvH%H(66  	M 86FLeLC	Ms   A AAc                 v    Ub  U=(       d    0 nXBS'   [        U 4XS.UD6nU(       a  UR                  U5      $ U$ )z
Same as `django.urls.reverse`, but optionally takes a request
and returns a fully qualified URL, using the request to get the base URL.
r   )r   r   )django_reversebuild_absolute_uri)r   r   r   r   r   r   r   s          r   r   r   4   sH    
 2!x

E
Eu
EC))#..Jr   )N)NNNN)__doc__django.urlsr   r   r   django.utils.functionalr   rest_framework.settingsr   rest_framework.utils.urlsr   r   r   strreverse_lazy r   r   <module>r(      s8    ' 1 ( 0 9(7( GS!r   