
    M@c
                     T    d dl ZddlmZ dZ	 dZdZ G d de      Z	d Z
dd	eddfd
Zy)    N   )Fore   )yesytruec                       e Zd ZdZy)
PromptExitzCRaised when ``DISABLE_PROMPT`` is 'raise' and ``prompt`` is called.N)__name__
__module____qualname____doc__     4/usr/lib/python3/dist-packages/eyed3/utils/prompt.pyr
   r
      s    Mr   r
   c                     t               }| j                  dd      } | j                         D ]  }t        |      }|j	                  |         t        |      S )N, )setreplacesplitintaddlist)respintscis       r   parseIntListr      sN    5D<<S!DZZ\ F :r   Tc                 "   |du xs |du }|r	|du rdnd}n|rt        |      nd}|| d|d} | |sdnd	z  } t        r<t        d
k(  r(t        | dz          t        j                  t
               nt        |       d}|	 t        |       }|s|dvrt        |      }|r7|r|j                         t        v rdnd}n|j                         }	  ||      }n|syd}|r||vs
|rU ||      sM|r+t        t        j                  d      t        |      z          nt        t        j                  d             d}||S # t        $ r t               w xY w# t        $ r3}	t        t        j                  t        |	                   d}Y d}	~	d}	~	ww xY w)a  Prompt user for input, the prequest is in ``msg``. If ``default`` is
    not ``None`` it will be displayed as the default and returned if not
    input is entered. The value ``None`` is only returned if ``required`` is
    ``False``. The response is passed to ``type_`` for conversion (default
    is unicode) before being returned. An optional list of valid responses can
    be provided in ``choices``.TFYnyNNz []z: z? exitz 
Prompting is disabled, exiting.)N zInvalid response, choose from: zInvalid response)strDISABLE_PROMPTprint_sysr$   EXIT_STATUSr
   inputEOFErrorlowerBOOL_TRUE_RESPONSESstrip	Exceptionfgred)
msgdefaultrequiredtype_validatechoicesyes_no_promptdefault_strr   exs
             r   promptr<      s    tO7w%'7M%od4&-c'l4,}4$.CV##;;<IIk"S/!D
,	:D z1w<D#zz|/BBtzz|  ;D DW,(4.bff>?#g,NObff/01DC ,F K?  	 ,	 !  "&&R/*D s$   ?D; E ;E	F)F		F)sysr)   consoler   r1   r'   r*   r.   RuntimeErrorr
   r   r&   r<   r   r   r   <module>r@      sF     # * 	 	
 t3$>r   