File: //usr/local/lib/python3.10/dist-packages/pip/_vendor/rich/__pycache__/spinner.cpython-310.pyc
o
��hv � @ s� d dl mZmZmZmZmZ ddlmZ ddlm Z ddl
mZ ddlm
Z
er:ddlmZmZmZmZ ddlmZ G d d
� d
�Zedkr{d dlmZ dd
lmZ ddlmZ edd� ee�� �D �� Zeedd��Z ed� ql1 stw Y dS dS )� )�
TYPE_CHECKING�List�Optional�Union�cast� )�SPINNERS)�Measurement)�Table)�Text)�Console�ConsoleOptions�RenderableType�RenderResult)� StyleTypec @ s� e Zd ZdZ dddd�deddd ed
deddf
d
d�Z ddd�Zddddde fdd�Z
deddfdd�Zdddd�ddd ed
dee ddfdd�ZdS ) �Spinnera� A spinner animation.
Args:
name (str): Name of spinner (run python -m rich.spinner).
text (RenderableType, optional): A renderable to display at the right of the spinner (str or Text typically). Defaults to "".
style (StyleType, optional): Style for spinner animation. Defaults to None.
speed (float, optional): Speed factor for animation. Defaults to 1.0.
Raises:
KeyError: If name isn't one of the supported spinner animations.
� Ng �?)�style�speed�name�textr r r r �returnc C s� zt | }W n ty td|����w t|t�rt�|�n|| _|| _tt t |d �d d � | _
tt|d �| _d | _
|| _|| _d| _d| _d S )Nzno spinner called �frames�interval� )r �KeyError�
isinstance�strr �from_markupr r r r r �floatr �
start_timer r �frame_no_offset�
_update_speed)�selfr r r r �spinner� r% �C/usr/local/lib/python3.10/dist-packages/pip/_vendor/rich/spinner.py�__init__ s ��
zSpinner.__init__�consoler �optionsr
r c c s � | � |�� �V d S )N)�render�get_time)r# r( r) r% r% r&