
    iN1              	         d dl mZ d dlZd dlZd dlmZ d dlmZmZ d dlmZ d dl	m
Z
mZmZmZmZmZmZ e
rddlmZ dd	l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 ddl m!Z!  G d de          Z"e#dk    rd dl$m%Z% dZ& ej'        de&d e"dd          g            ej(        d          Z)e)*                    d           e)*                    d            e%d           e)*                    d           e)*                    d           e)*                    d            e)+                    d!            e%d           e),                    d"d#d$g d%d&gd'd(d#ddd'd)           e),                    d*           e)-                    d+           e)*                    d,           e)*                    d-           e)+                    d.           d7d1Z. e.              e%d           e)/                    d2           e)*                    d3           e)*                    d4 e0d5          6           dS dS )8    )annotationsN)datetime)Handler	LogRecord)
ModuleType)TYPE_CHECKINGClassVarIterableListOptionalTypeUnion   )FormatTimeCallable)ConsoleConsoleRenderable)Highlighter	Traceback)NullFile)get_console)	LogRender)ReprHighlighter)Textc                       e Zd ZU dZg dZded<   eZded<   ej	        dfddddddd	d	dd
dddd	ddddddddB fd4Z
dCd8ZdDd9ZdEd=ZdFdAZ xZS )GRichHandlera  A logging handler that renders output with Rich. The time / level / message and file are displayed in columns.
    The level is color coded, and the message is syntax highlighted.

    Note:
        Be careful when enabling console markup in log messages if you have configured logging for libraries not
        under your control. If a dependency writes messages containing square brackets, it may not produce the intended output.

    Args:
        level (Union[int, str], optional): Log level. Defaults to logging.NOTSET.
        console (:class:`~rich.console.Console`, optional): Optional console instance to write logs.
            Default will use a global console instance writing to stdout.
        show_time (bool, optional): Show a column for the time. Defaults to True.
        omit_repeated_times (bool, optional): Omit repetition of the same time. Defaults to True.
        show_level (bool, optional): Show a column for the level. Defaults to True.
        show_path (bool, optional): Show the path to the original log call. Defaults to True.
        enable_link_path (bool, optional): Enable terminal link of path column to file. Defaults to True.
        highlighter (Highlighter, optional): Highlighter to style log messages, or None to use ReprHighlighter. Defaults to None.
        markup (bool, optional): Enable console markup in log messages. Defaults to False.
        rich_tracebacks (bool, optional): Enable rich tracebacks with syntax highlighting and formatting. Defaults to False.
        tracebacks_width (Optional[int], optional): Number of characters used to render tracebacks, or None for full width. Defaults to None.
        tracebacks_code_width (int, optional): Number of code characters used to render tracebacks, or None for full width. Defaults to 88.
        tracebacks_extra_lines (int, optional): Additional lines of code to render tracebacks, or None for full width. Defaults to None.
        tracebacks_theme (str, optional): Override pygments theme used in traceback.
        tracebacks_word_wrap (bool, optional): Enable word wrapping of long tracebacks lines. Defaults to True.
        tracebacks_show_locals (bool, optional): Enable display of locals in tracebacks. Defaults to False.
        tracebacks_suppress (Sequence[Union[str, ModuleType]]): Optional sequence of modules or paths to exclude from traceback.
        tracebacks_max_frames (int, optional): Optional maximum number of frames returned by traceback.
        locals_max_length (int, optional): Maximum length of containers before abbreviating, or None for no abbreviation.
            Defaults to 10.
        locals_max_string (int, optional): Maximum length of string before truncating, or None to disable. Defaults to 80.
        log_time_format (Union[str, TimeFormatterCallable], optional): If ``log_time`` is enabled, either string for strftime or callable that formats the time. Defaults to "[%x %X] ".
        keywords (List[str], optional): List of words to highlight instead of ``RichHandler.KEYWORDS``.
    )GETPOSTHEADPUTDELETEOPTIONSTRACEPATCHzClassVar[Optional[List[str]]]KEYWORDSzClassVar[Type[Highlighter]]HIGHLIGHTER_CLASSNTFX       d   
   P   z[%x %X])	show_timeomit_repeated_times
show_level	show_pathenable_link_pathhighlightermarkuprich_tracebackstracebacks_widthtracebacks_code_widthtracebacks_extra_linestracebacks_themetracebacks_word_wraptracebacks_show_localstracebacks_suppresstracebacks_max_frameslocals_max_lengthlocals_max_stringlog_time_formatkeywordslevelUnion[int, str]consoleOptional[Console]r-   boolr.   r/   r0   r1   r2   Optional[Highlighter]r3   r4   r5   Optional[int]r6   r7   intr8   Optional[str]r9   r:   r;    Iterable[Union[str, ModuleType]]r<   r=   r>   r?   Union[str, FormatTimeCallable]r@   Optional[List[str]]returnNonec                  t                                          |           |pt                      | _        |p|                                 | _        t          |||||d           | _        || _        |	| _	        |
| _
        || _        || _        || _        || _        || _        || _        || _        || _        || _        || _        || _        d S )N)rA   )r-   r/   r0   time_formatr.   level_width)super__init__r   rC   r&   r2   r   _log_renderr1   r3   r4   r5   r7   r8   r9   r:   r;   r<   r6   r=   r>   r@   )selfrA   rC   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   	__class__s                          R/var/www/html/crypto-bot/backend/venv/lib/python3.11/site-packages/rich/logging.pyrS   zRichHandler.__init__G   s    4 	u%%%/+--&B$*@*@*B*B$!' 3
 
 
 !1. 0&<# 0$8!&<##6 %:"%:"!2!2     recordr   r   c                    |j         }t          j        |                    d          d|                                           }|S )zGet the level name from the record.

        Args:
            record (LogRecord): LogRecord instance.

        Returns:
            Text: A tuple of the style and level name.
           zlogging.level.)	levelnamer   styledljustlower)rU   rY   
level_name
level_texts       rW   get_level_textzRichHandler.get_level_text{   sM     %
[Q!F*2B2B2D2D!F!F
 

 rX   c                   |                      |          }d}| j        r|j        r|j        dk    r|j        \  }}}|J |J ddlm}  |j        |||| j        | j        | j        | j	        | j
        | j        | j        | j        | j        | j                  }|                                }| j        ry|                                |_        | j        }t'          |d          r4|                                r |                    ||j                  |_        |                    |          }|                     ||          }	|                     |||	          }
t7          | j        j        t<                    r|                     |           dS 	 | j                             |
           dS # tB          $ r |                     |           Y dS w xY w)zInvoked by logging.N)NNNr   r   )
width
code_widthextra_linestheme	word_wrapshow_localsr=   r>   suppress
max_framesusesTime)rY   	tracebackmessage_renderable)"formatr4   exc_inform   r   from_exceptionr5   r6   r7   r8   r9   r:   r=   r>   r;   r<   
getMessage	formattermessagehasattrrl   
formatTimedatefmtasctimeformatMessagerender_messagerender
isinstancerC   filer   handleErrorprint	Exception)rU   rY   rt   rm   exc_type	exc_valueexc_tracebackr   rs   rn   log_renderables              rW   emitzRichHandler.emit   s"   ++f%%	 	:	: #55517.Hi'''(((,,,,,,0	0+5 7+3 7"&"8"&"815  I ''))G~ :!'!2!2!4!4 N	9j11 Ui6H6H6J6J U%.%9%9&)BS%T%TFN#11&99!00AAYCU % 
 
 dl'22 		) V$$$$$)"">22222 ) ) )  (((((()s   F0 0GGrt   strr   c                ,   t          |d| j                  }|rt          j        |          nt          |          }t          |d| j                  }|r ||          }| j        | j        | _        | j        r|                    | j        d           |S )zRender message text in to Text.

        Args:
            record (LogRecord): logging Record.
            message (str): String containing log message.

        Returns:
            ConsoleRenderable: Renderable to display log message.
        r3   r2   Nzlogging.keyword)getattrr3   r   from_markupr2   r@   r%   highlight_words)rU   rY   rt   
use_markupmessage_textr2   s         rW   rz   zRichHandler.render_message   s     VXt{;;
4>Qt'000DMMfmT5EFF 	5&;|44L=  MDM= 	K((8IJJJrX   rm   Optional[Traceback]rn   c          
     L   t           j                            |j                  }|                     |          }| j        dn| j        j        }t          j        |j	                  }| 
                    | j        |s|gn||g|||||j        | j        r|j        nd          }|S )av  Render log for display.

        Args:
            record (LogRecord): logging Record.
            traceback (Optional[Traceback]): Traceback instance or None for no Traceback.
            message_renderable (ConsoleRenderable): Renderable (typically Text) containing log message contents.

        Returns:
            ConsoleRenderable: Renderable to display log.
        N)log_timerP   rA   pathline_no	link_path)osr   basenamepathnamerb   rs   rw   r   fromtimestampcreatedrT   rC   linenor1   )	rU   rY   rm   rn   r   rA   rP   r   r   s	            rW   r{   zRichHandler.render   s    " w00##F++"n4dd$.:P)&.99))L(1V  8JI7V#M)-)>HfooD * 	
 	
 rX   ).rA   rB   rC   rD   r-   rE   r.   rE   r/   rE   r0   rE   r1   rE   r2   rF   r3   rE   r4   rE   r5   rG   r6   rG   r7   rH   r8   rI   r9   rE   r:   rE   r;   rJ   r<   rH   r=   rH   r>   rH   r?   rK   r@   rL   rM   rN   )rY   r   rM   r   )rY   r   rM   rN   )rY   r   rt   r   rM   r   )rY   r   rm   r   rn   r   rM   r   )__name__
__module____qualname____doc__r%   __annotations__r   r&   loggingNOTSETrS   rb   r   rz   r{   __classcell__)rV   s   @rW   r   r      s-           D	/ 	/ 	/H 	 	 	 	 6EDDDD ")%)2!
 $(!%-1 %*./1&'*.%)',@B%(!#!#:C(,12! 2! 2! 2! 2! 2! 2! 2!h   2) 2) 2) 2)h   2               rX   r   __main__)sleepz%(message)sr   z[%X]T)r4   r:   )rA   ro   rw   handlersrichzServer starting...z"Listening on http://127.0.0.1:8080zGET /index.html 200 1298z)GET /imgs/backgrounds/back1.jpg 200 54386zGET /css/styles.css 200 54386zGET /favicon.ico 404 242zJSONRPC request
--> %r
<-- %rz1.1confirmFruitPurchase)appleorangemangoespomelog+?	194521489)versionmethodparamsid)r   resulterrorr   zrLoading configuration file /adasd/asdasd/qeqwe/qwrqwrqwr/sdgsdgsdg/werwerwer/dfgerert/ertertert/ertetert/werwerwerz$Unable to find 'pomelo' in database!zPOST /jsonrpc/ 200 65532zPOST /admin/ 401 42234z%password was rejected for admin site.rM   rN   c                     d} d}dgdz  }t                               d           	 | |z   d S #  t                               d           Y d S xY w)Nr   r   foor*   z	in dividezAn error of some kind occurred!)logdebug	exception)numberdivisorfooss      rW   divider   #  sd    w}		+	=W	=MM;<<<<<<s	   - AzOut of memory!zServer exited with code=-1z[bold]EXITING...[/bold])r3   )extra)rM   rN   )1
__future__r   r   r   r   r   r   typesr   typingr   r	   r
   r   r   r   r   rT   r   rC   r   r   r2   r   rm   r   rich._null_filer    r   r   r   textr   r   r   timer   FORMATbasicConfig	getLoggerr   infowarningr   r   r   criticaldictr)   rX   rW   <module>r      s   " " " " " "  				       & & & & & & & &       Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q %//////33333333(((((($$$$$$ $ $ $ $ $ $       " " " " " " ( ( ( ( ( (      _ _ _ _ _' _ _ _D zFG+d4PPPQ	    '
F
#
#CHH!"""HH1222	E!HHHHH'(((HH8999HH,---KK*+++	E!HHHII),???G		
 	
 TDLL	 	 	 II|   II4555HH'(((HH%&&&KK7888= = = = FHHH	E!HHHLL!"""HH)***HH&dd$.?.?.?H@@@@@o rX   