o
    …Ýh2  ã                   @   sL  U d dl Z d dlZd dlmZmZ d dlmZ d dlmZ ddl	m
Z
mZ e e¡Zi dd“dd“d	d“d
d“dd“dd“dd“dd“dd“dd“dg “dg “dd“dd“dg “dg “dg “i dddd œd!d"d#dddd#d$i d#d%œ¥Zeeef ed&< i d'd#“d(d#“d)d#“d*d#“d+d#“d,d-“d.d/“d0d#“d1d#“d2d#“d3d#“d4d#“d5d6“d7d#“d8d#“d9d#“d:d#“d#d#d;dd<d=d>d?d@dAdBœdCœ¥Zeeef edD< i d;dE“dFdG“dHdI“dJdK“dLdM“dNdO“dPdQ“dRdS“dTdU“dVdW“dXdY“dZd[“d\d]“d^d_“d`da“dbdc“ddde“dfdgdhdidjdkœ¥ZdkZdldmdndodpdqœZdredsefdtdu„Zdsefdvdw„Zdsefdxdy„ZdS )zé    N)ÚDictÚAny)Úsettings)Ústaticé   )Úget_admin_urlÚget_model_metaZ
site_titleZsite_headerZ
site_brandÚ	site_logoz$vendor/adminlte/img/AdminLTELogo.pngZsite_logo_classesz
img-circleÚ	site_iconZwelcome_signZWelcomeÚ	copyrightÚ Úsearch_modelZuser_avatarZtopmenu_linksZusermenu_linksZshow_sidebarTZnavigation_expandedÚ	hide_appsÚhide_modelsZorder_with_respect_tozfas fa-users-cogzfas fa-userzfas fa-users)Úauthz	auth.userz
auth.Groupzfas fa-chevron-circle-rightzfas fa-circleFÚhorizontal_tabs)Zcustom_linksÚiconsZdefault_icon_parentsZdefault_icon_childrenZrelated_modal_activeZ
custom_cssZ	custom_jsZuse_google_fonts_cdnZshow_ui_builderZchangeform_formatÚchangeform_format_overridesZlanguage_chooserÚDEFAULT_SETTINGSÚnavbar_small_textÚfooter_small_textÚbody_small_textÚbrand_small_textÚbrand_colourÚaccentzaccent-primaryÚnavbarznavbar-white navbar-lightÚno_navbar_borderÚnavbar_fixedÚlayout_boxedÚfooter_fixedÚsidebar_fixedÚsidebarzsidebar-dark-primaryÚsidebar_nav_small_textÚsidebar_disable_expandÚsidebar_nav_child_indentÚsidebar_nav_compact_styleÚdefaultzbtn-outline-primaryzbtn-outline-secondaryzbtn-outline-infozbtn-outline-warningzbtn-outline-dangerzbtn-outline-success)ÚprimaryZ	secondaryÚinfoÚwarningZdangerÚsuccess)Úsidebar_nav_legacy_styleÚsidebar_nav_flat_styleÚthemeÚdark_mode_themeÚbutton_classesÚDEFAULT_UI_TWEAKSz+vendor/bootswatch/default/bootstrap.min.cssZceruleanz,vendor/bootswatch/cerulean/bootstrap.min.cssZcosmoz)vendor/bootswatch/cosmo/bootstrap.min.cssZflatlyz*vendor/bootswatch/flatly/bootstrap.min.cssZjournalz+vendor/bootswatch/journal/bootstrap.min.cssZliteraz*vendor/bootswatch/litera/bootstrap.min.cssZlumenz)vendor/bootswatch/lumen/bootstrap.min.cssZluxz'vendor/bootswatch/lux/bootstrap.min.cssZmateriaz+vendor/bootswatch/materia/bootstrap.min.cssZmintyz)vendor/bootswatch/minty/bootstrap.min.cssÚpulsez)vendor/bootswatch/pulse/bootstrap.min.cssZ	sandstonez-vendor/bootswatch/sandstone/bootstrap.min.cssZsimplexz+vendor/bootswatch/simplex/bootstrap.min.cssZsketchyz+vendor/bootswatch/sketchy/bootstrap.min.cssZspacelabz,vendor/bootswatch/spacelab/bootstrap.min.cssZunitedz*vendor/bootswatch/united/bootstrap.min.cssZyetiz(vendor/bootswatch/yeti/bootstrap.min.cssz*vendor/bootswatch/darkly/bootstrap.min.cssz*vendor/bootswatch/cyborg/bootstrap.min.cssz)vendor/bootswatch/slate/bootstrap.min.cssz)vendor/bootswatch/solar/bootstrap.min.cssz-vendor/bootswatch/superhero/bootstrap.min.css)ÚdarklyZcyborgZslateZsolarÚ	superherozjazzmin/includes/single.htmlzjazzmin/includes/carousel.htmlz!jazzmin/includes/collapsible.htmlz%jazzmin/includes/horizontal_tabs.htmlz#jazzmin/includes/vertical_tabs.html)ÚsingleZcarouselZcollapsibler   Zvertical_tabsÚjazzmin_settingsÚreturnc                 C   s$   | d   d¡\}}dj|| ¡ dS )zŒ
    Get a search model string for reversing an admin url.

    Ensure the model name is lower cased but remain the app name untouched.
    r   Ú.z{app}.{model_name})ÚappÚ
model_name)ÚsplitÚformatÚlower)r5   r8   r9   © r=   úX/var/www/html/magazine_api/magazine_env/lib/python3.10/site-packages/jazzmin/settings.pyÚget_search_model_stringÂ   s   r?   c                  C   s<  t  t¡} dd„ ttdi ƒ ¡ D ƒ}|  |¡ | d r@tt| ƒƒ| d< t	| d ƒ}|r3|j
 ¡ | d< n| d  d¡d d	 | d< t| d
 ƒtkrO| d
 g| d
< dd„ | d
 D ƒ| d
< t| d ƒtkri| d g| d< dd„ | d D ƒ| d< dd„ |  di ¡ ¡ D ƒ| d< | d pŠ| d | d< dd„ |  di ¡ ¡ D ƒ| d< | S )Nc                 S   s   i | ]\}}|d ur||“qS )Nr=   ©Ú.0ÚxÚyr=   r=   r>   Ú
<dictcomp>Ï   ó    z get_settings.<locals>.<dictcomp>ZJAZZMIN_SETTINGSr   Z
search_urlZsearch_namer7   éÿÿÿÿÚsr   c                 S   ó   g | ]}|  ¡ ‘qS r=   ©r<   ©rA   rB   r=   r=   r>   Ú
<listcomp>Þ   ó    z get_settings.<locals>.<listcomp>r   c                 S   rH   r=   rI   rJ   r=   r=   r>   rK   â   rL   c                 S   ó   i | ]\}}|  ¡ |  ¡ “qS r=   rI   r@   r=   r=   r>   rD   å   rE   r   r
   r	   c                 S   rM   r=   rI   r@   r=   r=   r>   rD   ë   s    ÿr   )ÚcopyÚdeepcopyr   Úgetattrr   ÚitemsÚupdater   r?   r   Zverbose_name_pluralÚtitler:   ÚtypeÚstrÚget)r5   Zuser_settingsZ
model_metar=   r=   r>   Úget_settingsÍ   s*   


ÿrW   c            	         sà  t  t¡} |  ttdi ƒ¡ dd„ |  ¡ D ƒ‰ ˆ  d¡r(ˆ  dd ¡ ˆ  dd ¡ i dd“d	d“d
d“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“}| ¡ D ]\}}|ˆ v rj|ˆ |< q^d t	d!t	f‡ fd"d#„}ˆ d$ }|t
vr‹t d% |t
 ¡ ¡¡ d&}ˆ  d'd ¡}|r¡|tvr¡t d( |¡¡ d)}d* |¡}|tv r®|d+7 }| |tt
| ƒd,œ|d-dƒ|d.ddƒ|d/d
ddddƒ| |dƒ|dddddƒ|dd0ƒ|d	ƒˆ d1 d2œ
}|rî|tt
| ƒd,œ|d'< |S )3NZJAZZMIN_UI_TWEAKSc                 S   s   i | ]\}}|d vr||“qS ))Nr   Fr=   r@   r=   r=   r>   rD   õ   rE   z!get_ui_tweaks.<locals>.<dictcomp>r   r   r   r   ztext-smr   r   r   r"   r   zborder-bottom-0r#   zsidebar-no-expandr$   znav-child-indentr%   znav-compactr+   z
nav-legacyr,   znav-flatzlayout-boxedr    zlayout-fixedzlayout-navbar-fixedzlayout-footer-fixedZactions_sticky_topz
sticky-topÚargsr6   c                     s   d  ‡ fdd„| D ƒ¡ ¡ S )Nú c                    s   g | ]}ˆ   |d ¡‘qS )r   )rV   )rA   Úarg©Ztweaksr=   r>   rK     s    z2get_ui_tweaks.<locals>.classes.<locals>.<listcomp>)ÚjoinÚstrip)rX   r[   r=   r>   Úclasses  s   zget_ui_tweaks.<locals>.classesr-   z!{} not found in {}, using defaultr&   r.   z${} is not a dark theme, using darklyr2   z	 theme-{}z
 dark-mode)ÚnameÚsrcr!   r   r   r   r/   )
Úrawr-   Zsidebar_classesZnavbar_classesZbody_classesZactions_classesZsidebar_list_classesZbrand_classesZfooter_classesr/   )rN   rO   r0   rR   rP   r   rQ   rV   ÚpoprU   ÚTHEMESÚloggerr)   r;   ÚkeysÚDARK_THEMESr   )	Z
raw_tweaksZbool_mapÚkeyÚvaluer^   r-   r.   Ztheme_body_classesÚretr=   r[   r>   Úget_ui_tweaksò   sž   

ÿþýüûúùø	÷
öõôóòñð€

ÿýûírj   )rN   ÚloggingÚtypingr   r   Zdjango.confr   Zdjango.templatetags.staticr   Úutilsr   r   Ú	getLoggerÚ__name__rd   r   rU   Ú__annotations__r0   rc   rf   ZCHANGEFORM_TEMPLATESr?   rW   rj   r=   r=   r=   r>   Ú<module>   s2  
 
þüúø
öôòðîìçâ#Ý%Û'Ù)×+Õ-

®Zþüúø
öôòðîìêèæäâ à"Þ$úÔ6þýüûúùø	÷
öõôóòñðïîèû	%