
    aKi9                        d dl mZ d dlZd dl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 ej                  rdd	lmZ  G d
 de      Zy)    )annotationsN)	timedelta   )current_app)send_from_directory)	Blueprint)BlueprintSetupState)Responsec                  &    e Zd ZddZddZdddZy)	r   c                    t         j                  d   }|yt        |t              rt	        |j                               S |S )an  Used by :func:`send_file` to determine the ``max_age`` cache
        value for a given file path if it wasn't passed.

        By default, this returns :data:`SEND_FILE_MAX_AGE_DEFAULT` from
        the configuration of :data:`~flask.current_app`. This defaults
        to ``None``, which tells the browser to use conditional requests
        instead of a timed cache, which is usually preferable.

        Note this is a duplicate of the same method in the Flask
        class.

        .. versionchanged:: 2.0
            The default configuration is ``None`` instead of 12 hours.

        .. versionadded:: 0.9
        SEND_FILE_MAX_AGE_DEFAULTN)r   config
isinstancer   inttotal_seconds)selffilenamevalues      O/var/www/get-produtos-api/venv/lib/python3.12/site-packages/flask/blueprints.pyget_send_file_max_agezBlueprint.get_send_file_max_age   s@    " ""#>?=eY'u**,--    c                    | j                   st        d      | j                  |      }t        t	        j
                  t        | j                        ||      S )aA  The view function used to serve files from
        :attr:`static_folder`. A route is automatically registered for
        this view at :attr:`static_url_path` if :attr:`static_folder` is
        set.

        Note this is a duplicate of the same method in the Flask
        class.

        .. versionadded:: 0.5

        z2'static_folder' must be set to serve static_files.)max_age)has_static_folderRuntimeErrorr   r   tcaststrstatic_folder)r   r   r   s      r   send_static_filezBlueprint.send_static_file,   sP     %%STT ,,X6"FF3**+Xw
 	
r   c                    |dvrt        d      t        t        j                  j	                  | j
                  |      |      S )a  Open a resource file relative to :attr:`root_path` for
        reading.

        For example, if the file ``schema.sql`` is next to the file
        ``app.py`` where the ``Flask`` app is defined, it can be opened
        with:

        .. code-block:: python

            with app.open_resource("schema.sql") as f:
                conn.executescript(f.read())

        :param resource: Path to the resource relative to
            :attr:`root_path`.
        :param mode: Open the file in this mode. Only reading is
            supported, valid values are "r" (or "rt") and "rb".

        Note this is a duplicate of the same method in the Flask
        class.

        >   rrbrtz)Resources can only be opened for reading.)
ValueErroropenospathjoin	root_path)r   resourcemodes      r   open_resourcezBlueprint.open_resourceB   s9    , ((HIIBGGLL:DAAr   N)r   z
str | Nonereturnz
int | None)r   r   r.   r
   )r#   )r+   r   r,   r   r.   zt.IO[t.AnyStr])__name__
__module____qualname__r   r    r-    r   r   r   r      s    6
,Br   r   )
__future__r   r'   typingr   datetimer   globalsr   helpersr   sansio.blueprintsr   SansioBlueprintr	   TYPE_CHECKINGwrappersr
   r2   r   r   <module>r<      s7    " 	     ( ; I??"KB KBr   