U
    {h                     @   sL  d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZmZ d dlmZ G d	d
 d
eZG dd dZededG dd deZededG dd deZededG dd deZededG dd deZededG dd dZededG dd dZed edG d!d" d"Zd#S )$    )AnyListMapping)warn)formsreverse)cached_property)versioned_static)Adapteradapter)RemovedInWagtail70Warningc                   @   s   e Zd Zedd ZdS )BaseSidebarAdapterc                 C   s   t jtdgdS )Nzwagtailadmin/js/sidebar.js)js)r   ZMediar
   self r   `/var/www/dating/data/www/fatepal.com/env/lib/python3.8/site-packages/wagtail/admin/ui/sidebar.pymedia   s    zBaseSidebarAdapter.mediaN)__name__
__module____qualname__r	   r   r   r   r   r   r      s   r   c                	   @   s6   e Zd Zdeeeeeeeef dddZdd ZdS )	MenuItem N)namelabel	icon_name	classname
classnamesattrsc                 C   s:   |rt dtd || _|| _|| _|p(|| _|p2i | _d S )NzTThe `classnames` kwarg for sidebar MenuItem is deprecated - use `classname` instead.category)r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   __init__   s    	
zMenuItem.__init__c                 C   s   | j | j| j| j| jdgS )Nr   r   r   r   r   r#   r   r   r   r   js_args/   s    zMenuItem.js_args)r   r   r   N)r   r   r   strr   r   r"   r$   r   r   r   r   r      s       
r   zwagtail.sidebar.LinkMenuItem)basec                
       sL   e Zd Zd
eeeeeeeeef d fddZ fddZdd	 Z  Z	S )LinkMenuItemr   N)r   r   urlr   r   r   r   c                    s4   |rt dtd t j||||p"||d || _d S )NzXThe `classnames` kwarg for sidebar LinkMenuItem is deprecated - use `classname` instead.r    r   r   r   )r   r   superr"   r(   )r   r   r   r(   r   r   r   r   	__class__r   r   r"   =   s    
zLinkMenuItem.__init__c                    s   t   }| j|d d< |S )Nr   r(   )r*   r$   r(   r   argsr+   r   r   r$   U   s    
zLinkMenuItem.js_argsc                 C   sT   | j |j koR| j|jkoR| j|jkoR| j|jkoR| j|jkoR| j|jkoR| j|jkS N)r,   r   r   r(   r   r   r   r   otherr   r   r   __eq__Z   s    





zLinkMenuItem.__eq__)r   r   r   N
r   r   r   r%   r   r   r"   r$   r2   __classcell__r   r   r+   r   r'   ;   s       
r'   zwagtail.sidebar.ActionMenuItemc                       sN   e Zd Zdeeeeeeeeeef d fddZ fddZd	d
 Z  Z	S )ActionMenuItemr   POSTN)r   r   actionr   r   r   methodr   c	           	         s:   |rt dtd t j||||p"||d || _|| _d S )NzZThe `classnames` kwarg for sidebar ActionMenuItem is deprecated - use `classname` instead.r    r)   )r   r   r*   r"   r7   r8   )	r   r   r   r7   r   r   r   r8   r   r+   r   r   r"   h   s    zActionMenuItem.__init__c                    s*   t   }| j|d d< | j|d d< |S )Nr   r7   r8   )r*   r$   r7   r8   r-   r+   r   r   r$      s    
zActionMenuItem.js_argsc                 C   s`   | j |j ko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jkS r/   )r,   r   r   r7   r8   r   r   r   r0   r   r   r   r2      s    






zActionMenuItem.__eq__)r   r   r   r6   Nr3   r   r   r+   r   r5   f   s"        
r5   zwagtail.sidebar.SubMenuItemc                       sR   e Zd Zd
eeee eeeeeeef d fddZ fddZ	dd	 Z
  ZS )SubMenuItemr   N)r   r   
menu_itemsr   r   r   footer_textr   c	           	         s:   |rt dtd t j||||p"||d || _|| _d S )NzWThe `classnames` kwarg for sidebar SubMenuItem is deprecated - use `classname` instead.r    r)   )r   r   r*   r"   r:   r;   )	r   r   r   r:   r   r   r   r;   r   r+   r   r   r"      s    zSubMenuItem.__init__c                    s(   t   }| j|d d< || j |S )Nr   r;   )r*   r$   r;   appendr:   r-   r+   r   r   r$      s    
zSubMenuItem.js_argsc                 C   s`   | j |j ko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jkS r/   )r,   r   r   r:   r   r   r;   r   r0   r   r   r   r2      s    






zSubMenuItem.__eq__)r   r   r   r   N)r   r   r   r%   r   r   r   r   r"   r$   r2   r4   r   r   r+   r   r9      s"        
r9   z$wagtail.sidebar.PageExplorerMenuItemc                       sN   e Zd Zd
eeeeeeeeeef d fddZ fddZdd	 Z	  Z
S )PageExplorerMenuItemr   N)r   r   r(   start_page_idr   r   r   r   c	           	         s6   |rt dtd t j|||||p$||d || _d S )Nz`The `classnames` kwarg for sidebar PageExplorerMenuItem is deprecated - use `classname` instead.r    r)   )r   r   r*   r"   r>   )	r   r   r   r(   r>   r   r   r   r   r+   r   r   r"      s    zPageExplorerMenuItem.__init__c                    s   t   }|| j |S r/   )r*   r$   r<   r>   r-   r+   r   r   r$      s    
zPageExplorerMenuItem.js_argsc                 C   s`   | j |j ko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jko^| j|jkS r/   )r,   r   r   r(   r>   r   r   r   r0   r   r   r   r2      s    






zPageExplorerMenuItem.__eq__)r   r   r   N)r   r   r   r%   intr   r   r"   r$   r2   r4   r   r   r+   r   r=      s        
r=   z%wagtail.sidebar.WagtailBrandingModulec                   @   s   e Zd Zdd ZdS )WagtailBrandingModulec                 C   s
   t dgS )NZwagtailadmin_homer   r   r   r   r   r$      s    zWagtailBrandingModule.js_argsN)r   r   r   r$   r   r   r   r   r@      s   r@   zwagtail.sidebar.SearchModulec                   @   s   e Zd Zdd Zdd ZdS )SearchModulec                 C   s
   || _ d S r/   )search_area)r   rB   r   r   r   r"      s    zSearchModule.__init__c                 C   s
   | j jgS r/   )rB   r(   r   r   r   r   r$     s    zSearchModule.js_argsN)r   r   r   r"   r$   r   r   r   r   rA      s   rA   zwagtail.sidebar.MainMenuModulec                   @   s,   e Zd Zee ee dddZdd ZdS )MainMenuModule)r:   account_menu_itemsc                 C   s   || _ || _|| _d S r/   )r:   rD   user)r   r:   rD   rE   r   r   r   r"     s    zMainMenuModule.__init__c                 C   sZ   ddl m} z| jj}W n tk
r0   d }Y nX | j| j|pF| j || jdddgS )Nr   )
avatar_url2   )size)r   Z	avatarUrl)Z,wagtail.admin.templatetags.wagtailadmin_tagsrF   rE   
first_nameAttributeErrorr:   rD   Zget_username)r   rF   rI   r   r   r   r$     s    
zMainMenuModule.js_argsN)r   r   r   r   r   r"   r$   r   r   r   r   rC     s    rC   N)typingr   r   r   warningsr   djangor   Zdjango.urlsr   Zdjango.utils.functionalr	   Zwagtail.admin.staticfilesr
   Zwagtail.telepathr   r   Zwagtail.utils.deprecationr   r   r   r'   r5   r9   r=   r@   rA   rC   r   r   r   r   <module>   s.   !
*
.
.
0


