Ë
    ÌiX  ã                   ó2   — d dl mZ d dlmZ  G d„ de«      Zy)é    )ÚDecimal)ÚScalec                   ó.   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚOrdinalzH
    A scale that maps individual values (e.g. strings) to a range.
    c                 ó   — || _         y )N©Ú_domain)ÚselfÚdomains     úW/var/www/html/strategist-ai/venv/lib/python3.12/site-packages/leather/scales/ordinal.pyÚ__init__zOrdinal.__init__
   s	   € Øˆ�ó    c                 ó   — || j                   v S )zq
        Return :code:`True` if a given value is contained within this scale's
        displayed domain.
        r   )r
   Úvs     r   ÚcontainszOrdinal.contains   s   € ð
 �D—L‘LÐ Ð r   c                 óò   — t        |«      }t        |«      }t        | j                  «      }||z
  |z  }	 || j                  j                  |«      |z  z   |dz  z   }|S # t        $ r t	        d|z  «      ‚w xY w)zK
        Project a value in this scale's domain to a target range.
        é   ú1Value "%s" is not present in Ordinal scale domain©r   Úlenr	   ÚindexÚ
ValueError)r
   ÚvalueÚ	range_minÚ	range_maxÚsegmentsÚsegment_sizeÚposs          r   ÚprojectzOrdinal.project   s�   € ô ˜IÓ&ˆ	Ü˜IÓ&ˆ	ä�t—|‘|Ó$ˆØ! IÑ-°Ñ9ˆð	ZØ˜tŸ|™|×1Ñ1°%Ó8¸<ÑGÑHÈLÐ[\ÑL\Ñ]ˆCð ˆ
øô ò 	ZÜÐPÐSXÑXÓYÐYð	Zús   µ'A ÁA6c                 óZ  — t        |«      }t        |«      }t        | j                  «      }||z
  |z  }|t        d«      z  }	 || j                  j                  |«      |z  z   |z   }|| j                  j                  |«      dz   |z  z   |z
  }||fS # t        $ r t	        d|z  «      ‚w xY w)z¢
        Project a value in this scale's domain to an interval in the target
        range. This is used for places :class:`.Bars` and :class:`.Columns`.
        é   é   r   r   )	r
   r   r   r   r   r   ÚgapÚaÚbs	            r   Úproject_intervalzOrdinal.project_interval%   sÄ   € ô
 ˜IÓ&ˆ	Ü˜IÓ&ˆ	ä�t—|‘|Ó$ˆØ! IÑ-°Ñ9ˆØœW R›[Ñ(ˆð	ZØ˜TŸ\™\×/Ñ/°Ó6¸ÑEÑFÈÑLˆAØ˜dŸl™l×0Ñ0°Ó7¸!Ñ;¸|ÑKÑLÈsÑRˆAð �1ˆvˆøô ò 	ZÜÐPÐSXÑXÓYÐYð	Zús   ÁAB ÂB*c                 ó   — | j                   S )z<
        Generate a series of ticks for this scale.
        r   )r
   s    r   ÚtickszOrdinal.ticks9   s   € ð �|‰|Ðr   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r&   r(   © r   r   r   r      s    „ ñòò!òò"ó(r   r   N)Údecimalr   Úleather.scales.baser   r   r-   r   r   ú<module>r0      s   ðÝ å %ô7ˆeõ 7r   