
    Nwg                         d dl mZmZ ddZy)    )get_script_prefixresolveNc                     ddl m ddlm fdt	               j                  d      }| t        |      d }  | g |g       S )z_
    Given a url returns a list of breadcrumbs, which are each a
    tuple of (name, url).
    r   )preserve_builtin_query_params)APIViewc                    	 t        |       \  }}}t        |dd      }t        |di       }|`t        |      rT|r|d   |k7  rJ |d	i |}	|	j                         }
 || z         }|j	                  d|
|f       |j                  |       	 | dk(  r|S | j                  d      r| j                  d      }  | |||      S | d| j                  d      dz    }  | |||      S # t        $ r Y aw xY w)
zy
        Add tuples of (name, url) to the breadcrumbs list,
        progressively chomping off parts of the url.
        clsN
initkwargsr    /    )
r   getattr
issubclassget_view_nameinsertappend	Exceptionendswithrstriprfind)urlbreadcrumbs_listprefixseenviewunused_argsunused_kwargsr	   r
   cname
insert_urlr   breadcrumbs_recursiver   requests               W/var/www/horilla/myenv/lib/python3.12/site-packages/rest_framework/utils/breadcrumbs.pyr#   z.get_breadcrumbs.<locals>.breadcrumbs_recursive   s   
	&18.T; $t,C |R8J:c7#; tBx4/)j)A??,D!>v|W!UJ$++Aj/ABKK%"9##\\# **S/C(.>MM %399S>A%&$S*:FDII=  		s   C$ $	C0/C0r   N)rest_framework.reverser   rest_framework.viewsr   r   r   len)r   r$   r   r   r#   r   s    ` @@@r%   get_breadcrumbsr)      sI    
 E,%JN  '',F
c&kl
C b&"55    )N)django.urlsr   r   r)   r   r*   r%   <module>r,      s    216r*   