B
    ì¹`×  ã               @   sL   d dl mZ d dl mZ ddlmZ dZddgZg Zg Z	dd	„ Z
d
d„ ZdS )é    )Úcheckset)Úpluginé   )Ú
exceptionsZ
pgwui_menuZ
menu_labelÚorderc             C   s^   |  d¡}|dkrdS t|tƒrJx8|D ]}||kr&|  t ||¡¡ q&W n|  t |¡¡ dS )z+Make sure the values are those allowed
    r   N)ÚgetÚ
isinstanceÚlistÚappendÚmenu_exZBadOrderItemErrorZBadOrderValuesError)ÚerrorsÚ
componentsÚsettingsÚvaluesÚ	component© r   úa/home/kop/projects/devel/pgwui/test_venv/lib/python3.7/site-packages/pgwui_menu/check_settings.pyÚvalidate_order#   s    


r   c             C   sX   g }|  t tt| ¡¡ |  t tt| ¡¡ |  t tt| ¡¡ t	 
¡ }t||| ƒ |S )zÿCheck that all pgwui_upload specific settings are good.
    This includes:
      checking for unknown settings
      checking for missing required settings
      checking the boolean settings
      checking that the values of other settings are valid
    )Úextendr   Zunknown_settingsÚPGWUI_COMPONENTÚMENU_SETTINGSZrequire_settingsÚREQUIRED_SETTINGSZboolean_settingsÚBOOLEAN_SETTINGSr   Zfind_pgwui_componentsr   )Zcomponent_configr   r   r   r   r   Úcheck_settings1   s    r   N)Zpgwui_commonr   r   Ú r   r   r   r   r   r   r   r   r   r   r   r   Ú<module>   s   