Ë
    Cêñi«  ã                  óš  — U d Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	 ddl
mZ er4ddlZddlmZmZ dd	lmZ ej$                  d
k\  rddlmZ nddlmZ ddlmZ g d¢Zeeee	f      Zded<    G d„ deeee	f      «      Zdd„Z ed¬«      Z ed¬«      Z ed¬«      Z ed¬«      Z  ed¬«      Z! ed¬«      Z" ed¬«      Z# ed¬«      Z$y)z;Set-like guards for matching metadata to an implementation.é    )Úannotations)ÚSet)Úchain)ÚTYPE_CHECKINGÚAny)Úv1N)ÚIterableÚIterator)ÚMetadata)é   é   )ÚUnpack)Ú	TypeAlias)ÚItemsÚMetaIsÚis_arrowÚis_csvÚis_jsonÚis_metaÚis_not_tabularÚ
is_parquetÚ
is_spatialÚis_topoÚis_tsvr   r   c                  ó–   ‡ — e Zd ZU ded<   dd„Zedd„«       Zdd„Zdd„Zdˆ fd„Z	dd„Z
dd	„Zdd
„Zdd„Zdd„Zdd„Zdd„Zdd„Zˆ xZS )r   úfrozenset[tuple[str, Any]]Ú	_requiresc               ó2   — t         j                  | d|«       y )Nr   )ÚobjectÚ__setattr__)ÚselfÚkwdss     ú^/var/www/pod-logistic/pod-ai/venv/lib/python3.12/site-packages/altair/datasets/_constraints.pyÚ__init__zMetaIs.__init__+   s   € Ü×Ñ˜4 ¨dÕ3ó    c               ó@   —  | t        |j                  «       «      «      S ©N)Ú	frozensetÚitems)ÚclsÚmetas     r#   Úfrom_metadatazMetaIs.from_metadata.   s   € á”9˜TŸZ™Z›\Ó*Ó+Ð+r%   c                óN   — t         rdd„} |di t        | «      ¤ŽS t        | «      S )Nc                 ó   — | S r'   © ©r"   s    r#   Úcollectz#MetaIs.to_metadata.<locals>.collect5   s   € Ø�r%   )r"   úUnpack[Metadata]Úreturnr   r/   )r   Údict)r!   r1   s     r#   Úto_metadatazMetaIs.to_metadata2   s(   € Ýóñ Ñ(œT $›ZÑ(Ð(Ü�D‹zÐr%   c                ó^   — | sd| ›�}t        |«      ‚t        j                  d„ | D «       «      S )z.Convert constraint into a narwhals expression.z2Unable to convert an empty set to an expression:

c              3  óR   K  — | ]  \  }}t        j                  |«      |k(  –— Œ! y ­wr'   )ÚnwÚcol)Ú.0ÚnameÚvals      r#   ú	<genexpr>z!MetaIs.to_expr.<locals>.<genexpr>@   s!   è ø€ Ò K¹¸¸s¤§¡¨£°Õ!4Ñ Kùs   ‚%')Ú	TypeErrorr8   Úall_horizontal)r!   Úmsgs     r#   Úto_exprzMetaIs.to_expr;   s2   € áØHÈÈÐQˆCÜ˜C“.Ð Ü× Ñ Ñ KÀdÔ KÓKÐKr%   c                ó"   •— t         ‰| �  |«      S r'   )ÚsuperÚ
isdisjoint)r!   ÚotherÚ	__class__s     €r#   rD   zMetaIs.isdisjointB   s   ø€ Ü‰wÑ! %Ó(Ð(r%   c                ó8   — | j                   j                  |«      S r'   )r   Úissubset)r!   rE   s     r#   rH   zMetaIs.issubsetE   s   € Ø�~‰~×&Ñ& uÓ-Ð-r%   c               ó    — | j                   |k  S r'   ©r   )r!   r+   s     r#   Ú__call__zMetaIs.__call__H   s   € Ø�~‰~ Ñ%Ð%r%   c                ó,   — t        | j                  «      S r'   )Úhashr   ©r!   s    r#   Ú__hash__zMetaIs.__hash__K   s   € Ü�D—N‘NÓ#Ð#r%   c                ó8   — | j                   j                  |«      S r'   )r   Ú__contains__)r!   Úxs     r#   rQ   zMetaIs.__contains__N   s   € Ø�~‰~×*Ñ*¨1Ó-Ð-r%   c              #  ó8   K  — | j                   E d {  –—†  y 7 Œ­wr'   rJ   rN   s    r#   Ú__iter__zMetaIs.__iter__Q   s   è ø€ Ø—>‘>×!Ò!ús   ‚’“c                ó6   — | j                   j                  «       S r'   )r   Ú__len__rN   s    r#   rV   zMetaIs.__len__T   s   € Ø�~‰~×%Ñ%Ó'Ð'r%   c                óR   — t        | «      j                  ›d|› d|› �}t        |«      ‚)Nz% is immutable.
Could not assign self.z = )ÚtypeÚ__name__r>   )r!   r;   Úvaluer@   s       r#   r    zMetaIs.__setattr__W   s8   € ä�D‹z×"Ñ"Ð%ð &%Ø%) F¨#¨e¨Wð6ð 	ô ˜‹nÐr%   c                ó  — t        | «      }|sd}np|j                  dd «      x}r6dj                  t        d|› d�gd„ |j	                  «       D «       «      «      }n&dj                  d„ |j	                  «       D «       «      }d|› d	�S )
Nz<placeholder>Úsuffixz, z'*ú'c              3  ó0   K  — | ]  \  }}|› d |›�–— Œ y­w©ú=Nr/   ©r:   ÚkÚvs      r#   r=   z"MetaIs.__repr__.<locals>.<genexpr>d   s   è ø€ Ò(P¹$¸!¸Q¨A¨3¨a°¨u¬Ñ(Pùó   ‚c              3  ó0   K  — | ]  \  }}|› d |›�–— Œ y­wr_   r/   ra   s      r#   r=   z"MetaIs.__repr__.<locals>.<genexpr>g   s   è ø€ Ò H±$°!°Q A 3 a¨ u¤Ñ Hùrd   zis_meta(ú))r4   ÚpopÚjoinr   r)   )r!   r)   Úcontentsr\   s       r#   Ú__repr__zMetaIs.__repr__^   sƒ   € Ü�T“
ˆÙØ&‰HØ—y‘y ¨4Ó0Ð0ˆVÐ0Ø—y‘yÜ˜˜F˜8 1�~Ð&Ñ(PÀ%Ç+Á+Ã-Ô(PÓQó‰Hð —y‘yÑ H¸%¿+¹+»-Ô HÓHˆHØ˜(˜ 1Ð%Ð%r%   )r"   r   r3   ÚNone)r+   r   r3   r   )r3   r   )r3   znw.Expr)rE   zIterable[Any]r3   Úbool)r+   r   r3   rl   )r3   Úint)rR   r   r3   rl   )r3   zIterator[tuple[str, Any]])r;   ÚstrrZ   r   )r3   rn   )rY   Ú
__module__Ú__qualname__Ú__annotations__r$   Úclassmethodr,   r5   rA   rD   rH   rK   rO   rQ   rT   rV   r    rj   Ú__classcell__)rF   s   @r#   r   r   (   sZ   ø… Ø)Ó)ó4ð ò,ó ð,óóLõ)ó.ó&ó$ó.ó"ó(ó÷
&r%   r   c                 ó,   — t         j                  | «      S r'   )r   r,   r0   s    r#   r   r   k   s   € Ü×Ñ Ó%Ð%r%   z.csv)r\   z.jsonz.tsvz.arrowz.parquetT)r   )r   F)Ú
is_tabular)r"   r2   r3   r   )%Ú__doc__Ú
__future__r   Úcollections.abcr   Ú	itertoolsr   Útypingr   r   Únarwhals.stabler   r8   Úsysr	   r
   Úaltair.datasets._typingr   Úversion_infor   Útyping_extensionsr   Ú__all__Útuplern   r   rq   r   r   r   r   r   r   r   r   r   r   r/   r%   r#   ú<module>r‚      sÍ   ðÚ Aå "å Ý ß %å $áÛß2å0à
×Ñ˜7Ò"Þ!å,Ý ò€ð �u˜S #˜X‘Ñ'€€yÓ 'ô@&ˆS��s˜C�x‘Ñ!ô @&óF&ñ 
˜Ô	€Ù
˜Ô
!€Ù	˜Ô	€Ù˜(Ô#€Ù˜JÔ'€
Ù Ô%€
Ù
˜$Ô
€Ù EÔ*�r%   