
    f                     v    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 d dl	Z	 G d d	          Z
d	gZdS )
    )datetime)
to_unicode)	vDatetime)vText)ascii_letters)digitsNc                   ^    e Zd ZdZ eeez             Zedd            Z	ed	d            Z
dS )
UIDGeneratorz/If you are too lazy to create real uid's.

       c                 Z    d                     d t          |           D                       S )z=Generates a string with random characters of length.
         c                 J    g | ] }t          j        t          j                  !S  )randomchoicer
   chars).0_s     S/var/www/dev/btcams2024/python_venv/lib/python3.11/site-packages/icalendar/tools.py
<listcomp>z+UIDGenerator.rnd_string.<locals>.<listcomp>   s%    QQQal&899QQQ    )joinrange)lengths    r   
rnd_stringzUIDGenerator.rnd_string   s+     wwQQ5==QQQRRRr   example.comr   c                    t          |           } |pt                                          }t          t          t	          j                                                                        }t          | d| d|            S )zGenerates a unique id consisting of:
            datetime-uniquevalue@host.
        Like:
            20050105T225746Z-HKtJMqUgdO0jDUwm@example.com
        -@)r   r
   r   r   r   todayto_icalr   )	host_nameuniquer    s      r   uidzUIDGenerator.uid   st     y))	4<22449X^%5%566>>@@AA444444555r   N)r   )r   r   )__name__
__module____qualname____doc__listr   r   r   staticmethodr   r$   r   r   r   r
   r
      sv          D'((ES S S \S
 	6 	6 	6 \	6 	6 	6r   r
   )r   icalendar.parser_toolsr   icalendar.propr   r   stringr   r   r   r
   __all__r   r   r   <module>r/      s          - - - - - - $ $ $ $ $ $                               6 6 6 6 6 6 6 60 
r   