Viewing File: /opt/alt/python38/lib/python3.8/site-packages/click/__pycache__/_termui_impl.cpython-38.pyc
U
½šWù? ã @ s d Z ddlZddlZddlZddlZddlmZmZmZm Z m
Z
mZmZm
Z
mZ ddlmZ ddlmZ ejdkr|dZd Znd
ZdZdd
„ ZG dd„ deƒZd"dd„Zdd„ Zdd„ Zdd„ ZG dd„ deƒZd#dd„Zdd„ Zeröddl Z dd „ Z!nddl"Z"ddl#Z#d!d „ Z!dS )$aY
click._termui_impl
~~~~~~~~~~~~~~~~~~
This module contains implementations for the termui module. To keep the
import time of Click down, some infrequently used functionality is placed
in this module and only imported as needed.
:copyright: (c) 2014 by Armin Ronacher.
:license: BSD, see LICENSE for more details.
é Né ) Ú_default_text_stdoutÚ
range_typeÚPY2ÚisattyÚopen_streamÚ
strip_ansiÚterm_lenÚget_best_encodingÚWIN)Úecho)ÚClickExceptionÚntú
Ú
z
[?25lz[?25h
c C sš z
t | ƒW S tk
r” zt| ƒj}W n tk
r@ Y Y dS X z|| ƒ}W n tk
rf Y Y dS X |tks†t|ttfƒr†|dk rŒY dS | Y S X dS )z%Returns the length hint of an object.Nr ) ÚlenÚ TypeErrorÚtypeÚ__length_hint__ÚAttributeErrorÚNotImplementedÚ
isinstanceÚintZlong)ÚobjZget_hintZhint© r ú/_termui_impl.pyÚ_length_hint s$
ÿþr c
@ s¬ e Zd Zd+d d
„Zdd„ Zd
d„ Zdd„ Zdd„ Zedd„ ƒZ edd„ ƒZ
edd„ ƒZdd„ Zdd„ Z
dd„ Zdd „ Zd!d"„ Zd#d$„ Zd%d&„ Zd'd(„ Zd)d*„ Zes¨eZ[dS ),ÚProgressBarNú#ú ú%(bar)sú TFé c C s || _ || _|| _|| _|| _|| _| | _|
| _|p6d| _|d krHt ƒ }|| _
|
| _|| _|dk| _
|d krtt|ƒ}|d kr”|d krŒtdƒ‚t|ƒ}t|ƒ| _|| _|d k | _d| _g | _t ¡ | _| _d| _d| _d | _d| _d | _t| j
ƒ | _d | _ d S )NÚ r ziterable or length is requiredF)!Ú fill_charÚ
empty_charÚbar_templateÚinfo_sepÚshow_etaÚshow_percentÚshow_posÚitem_show_funcÚlabelr ÚfileÚcolorÚwidthÚ autowidthr r r ÚiterÚlengthÚlength_knownÚposÚavgÚtimeÚstartÚlast_etaÚ eta_knownÚfinishedÚ max_widthÚenteredÚcurrent_itemr Ú is_hiddenÚ
_last_line)ÚselfÚiterabler2 r$ r% r&