
    h-                         S SK JrJrJr  S SKJr  SSKJr  SSKJ	r	  SSK
Jr  SSKJr  \" \5      r " S	 S
\	5      rS\S\S\\\\4      S\\\\4      4S jrS\S\S\\\\4      S\\\\\4   4   4S jrg)    )AnyOptionalUnion)get_session   )config)DatasetsError   )"get_authentication_headers_for_url)
get_loggerc                       \ rS rSrSrSrg)DatasetViewerError   zDataset viewer error.

Raised when trying to use the dataset viewer HTTP API and when trying to access:
- a missing dataset, or
- a private/gated dataset and the user is not authenticated.
- unavailable /parquet or /info responses
 N)__name__
__module____qualname____firstlineno____doc____static_attributes__r       X/home/james-whalen/.local/lib/python3.13/site-packages/datasets/utils/_dataset_viewer.pyr   r      s    r   r   datasetcommit_hashtokenreturnc           
         [         R                  R                  SS5      S-   n [        5       R	                  X0-   [        [         R                  SU  3-   US9SS9nUR                  5         SUR                  ;   a  UR                  S   U:X  d  Ucw  UR                  5       nUR	                  S
5      SL a9  UR	                  SS5      (       d"  UR	                  SS5      (       d  SU;   a  US   $ [        R                  SU  S35        O)[        R                  SU  SUR                  S    S35        [        S5      e! [         a<  n[        R                  SU  S[        U5      R                   SU S35         S	nANLS	nAff = f)zb
Get the dataset exported parquet files
Docs: https://huggingface.co/docs/datasets-server/parquet
://://datasets-server.z/parquet?dataset=	datasets/r         Y@urlheaderstimeout
X-RevisionNpartialFpendingTfailedparquet_fileszParquet export for  is not completely ready yet.) is available but outdated (commit_hash='')zNo parquet export for  available (: )z$No exported Parquet files available.r   HF_ENDPOINTreplacer   getr   raise_for_statusr%   jsonloggerdebug	Exceptiontyper   r   )r   r   r   dataset_viewer_parquet_urlparquet_data_files_response parquet_data_files_response_jsones          r   get_exported_parquet_filesr@      s    "(!3!3!;!;ECX!Y\o!o]&1m&7&7*46v7I7IiX_W`La7aino '8 '
#
 	$4466>>>*22<@KOS^Sf3N3S3S3U0488CuL<@@DQQ<@@4PP'+KK;OLLLL#6wi?\!]^)'2[\w\\  AM  ]N  \O  OQ  R
 C
DD  ]-gYl47CSCSBTTVWXVYYZ[\\]$   C	D= /D= 	)D= =
F2E>>Fc           
         [         R                  R                  SS5      S-   n [        5       R	                  X0-   [        [         R                  SU  3-   US9SS9nUR                  5         SUR                  ;   a  UR                  S   U:X  d  Ucw  UR                  5       nUR	                  S
5      SL a9  UR	                  SS5      (       d"  UR	                  SS5      (       d  SU;   a  US   $ [        R                  SU  S35        O)[        R                  SU  SUR                  S    S35        [        S5      e! [         a<  n[        R                  SU  S[        U5      R                   SU S35         S	nANLS	nAff = f)z
Get the dataset information, can be useful to get e.g. the dataset features.
Docs: https://huggingface.co/docs/datasets-server/info
r   r   z/info?dataset=r    r!   r"   r#   r'   Nr(   Fr)   Tr*   dataset_infozDataset info for r,   r-   r.   zNo dataset info for r/   r0   r1   z$No exported dataset infos available.r2   )r   r   r   dataset_viewer_info_urlinfo_responser?   s         r   get_exported_dataset_infosrF   >   s    %0088@UVYii[#))'16v7I7IiX_W`La7aino * 

 	&&(=000$$\2kA[EX - 2 2 4!%%i0E9)--i>>)--h==&-7(88LL#4WI=Z![\'y0YZgZoZop|Z}Y~  A  B
 C
DD  [+G9LaAQAQ@RRTUVTWWXYZZ[rA   N)typingr   r   r   huggingface_hub.utilsr    r   
exceptionsr	   
file_utilsr   loggingr   r   r8   r   strboollistdictr@   rF   r   r   r   <module>rQ      s    ' ' -  &   
H	 !E!E"!E+3E#t)4D+E!E	$sCx.!EH!E!E"!E+3E#t)4D+E!E	#tCH~
!Er   