
    H[gI	                        d dl mZ d dlZd dlZd dlZd dlmZ ddlm	Z	 ej                  rddlmZ edd       ZddZ ej                  e      Zej#                   ej$                  d	             dd
Zy)    )annotationsN)
LocalProxy   )request)Appc                 T    t         rt         j                  d   S t        j                  S )a  Find the most appropriate error stream for the application. If a request
    is active, log to ``wsgi.errors``, otherwise use ``sys.stderr``.

    If you configure your own :class:`logging.StreamHandler`, you may want to
    use this for the stream. If you are using file or dict configuration and
    can't import this directly, you can refer to it as
    ``ext://flask.logging.wsgi_errors_stream``.
    zwsgi.errors)r   environsysstderr     H/var/www/html/bid-api/venv/lib/python3.12/site-packages/flask/logging.pywsgi_errors_streamr      s      }--::r   c                    | j                         | }|r<t        fd|j                  D              ry|j                  s	 y|j                  }|r<y)zCheck if there is a handler in the logging chain that will handle the
    given logger's :meth:`effective level <~logging.Logger.getEffectiveLevel>`.
    c              3  <   K   | ]  }|j                   k    y w)N)level).0handlerr   s     r   	<genexpr>z$has_level_handler.<locals>.<genexpr>'   s     F5E'w}}%5Es   TF)getEffectiveLevelanyhandlers	propagateparent)loggercurrentr   s     @r   has_level_handlerr      sX     $$&EG
FW5E5EFF    ..  r   z6[%(asctime)s] %(levelname)s in %(module)s: %(message)sc                    t        j                  | j                        }| j                  r+|j                  s|j                  t         j                         t        |      s|j                  t               |S )a  Get the Flask app's logger and configure it if needed.

    The logger name will be the same as
    :attr:`app.import_name <flask.Flask.name>`.

    When :attr:`~flask.Flask.debug` is enabled, set the logger level to
    :data:`logging.DEBUG` if it is not set.

    If there is no handler for the logger's effective level, add a
    :class:`~logging.StreamHandler` for
    :func:`~flask.logging.wsgi_errors_stream` with a basic format.
    )
logging	getLoggernamedebugr   setLevelDEBUGr   
addHandlerdefault_handler)appr   s     r   create_loggerr(   :   sP     sxx(F
yy&V$/*Mr   )returnzt.TextIO)r   logging.Loggerr)   bool)r'   r   r)   r*   )
__future__r   r   r
   typingtwerkzeug.localr   globalsr   TYPE_CHECKING
sansio.appr   r   r   StreamHandlerr&   setFormatter	Formatterr(   r   r   r   <module>r6      ss    "  
  % ??  * ('''(:;   GNO
r   