
    bi                         d dl mZ d dlmZmZ d dlmZmZmZm	Z	m
Z
mZmZ d dlZd dlmZ d dlmZ d dlmZ 	 	 dded	ed
ee   deeeef      def
dZddZy)    )chain)OptionalUnion)
CommitInfoCommitOperationAddCommitOperationDeleteDatasetCardDatasetCardDataHfApiHfFileSystemN)DatasetInfosDict)load_dataset_builder)MetadataConfigsrepo_idconfig_namerevisiontokenreturnc           
      2   g }t        t        j                  j                  |      }t	        | |||      }t        |j                  j                  j                          D ]H  }|j                  |      }|j                  | k(  s$|j                  t        |j                               J t        j                  |       }	|	j                  j!                  dd      r/||	j                  d   v r|	j                  d   j#                  |       t%        j&                  |	j                        }
|
r|
j)                  |d      }t+               }|
j-                  |       t        j                  j.                  |v rC|t        j                  j.                     |	j                  t        j                  j.                  <   n4|	j                  j)                  t        j                  j.                  d      }t1        j&                  |	j                        }|r`|j)                  |d      }t+               }|j-                  |       d|v r|d   |	j                  d<   n|	j                  j)                  dd      }|j                  t3        t        j                  j4                  t7        |	      j9                                      t;        t        j                  j                  |      }|j=                  | |d| d	d| d
|d|d      }t?        d|j@                          |S )a=  Delete a dataset configuration from a [data-only dataset](repository_structure) on the Hub.

    Args:
        repo_id (`str`): ID of the Hub dataset repository, in the following format: `<user>/<dataset_name>` or
            `<org>/<dataset_name>`.
        config_name (`str`): Name of the dataset configuration.
        revision (`str`, *optional*): Branch to delete the configuration from. Defaults to the `"main"` branch.
        token (`bool` or `str`, *optional*): Authentication token for the Hugging Face Hub.

    Returns:
        `huggingface_hub.CommitInfo`
    endpointr   )r   r   )path_in_repoconfig_namesNdataset_info)r   path_or_fileobjzDelete 'z' configz	' config.datasetT)
operationscommit_messagecommit_descriptionr   	repo_typer   	create_prz6You can find your PR to delete the dataset config at: )!r   datasetsconfigHF_ENDPOINTr   r   
data_filesvaluesresolve_pathr   appendr   r   r	   loaddatagetremover   from_dataset_card_datapopr
   to_dataset_card_dataMETADATA_CONFIGS_FIELDr   r   REPOCARD_FILENAMEstrencoder   create_commitprintpr_url)r   r   r   r   r   fsbuilder	data_filedata_file_resolved_pathdataset_cardmetadata_configs_dataset_card_datadataset_infosapicommit_infos                   G/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/datasets/hub.pydelete_from_hubrC      s   $ J	x::%	HB"7K(RWXGGNN55<<>? h	"$//)"<"**g53AXAeAefgh
 ##G,L^T2{lFWFWXfFg7g.)00=&==l>O>OP  d3+---.?@??115FFHY66ILhooDDE !!%%hoo&L&LdSA&6&M&MlN_N_&`Mk40+-**+<=..0A.0QLn-!!%%nd;A(I(I[^_k[l[s[s[uv 44E
BC##!+h7%k])< $ 	K 
B;CUCUBV
WX    c                 Z   t        t        j                  j                  |      }|j	                  | d      }|rqg }g }|D ]/  }|dv r|dk(  r|j                  |       |j                  |       1 |r|j                  d| d|d       |r|D ]  }|j                  || d|d        y y y )	Nr   r   )r    >   	README.md.gitattributeszdataset_infos.jsonz Delete legacy dataset_infos.json)r    r   r   zDelete data file)r   r"   r#   r$   list_repo_filesr(   delete_file)
dataset_idr   r   hf_api
repo_fileslegacy_json_filer%   filenames           rB   _delete_filesrO   \   s    HOO77uEF'' ( J 
" 	,H::11 ''1!!(+	, $#!A   & ""'%#5 #  % rD   )NN)	itertoolsr   typingr   r   huggingface_hubr   r   r   r	   r
   r   r   datasets.configr"   datasets.infor   datasets.loadr   datasets.utils.metadatar   r2   boolrC   rO    rD   rB   <module>rY      s     "    * . 3 #(,	EEE smE E$)$%	E
 EP rD   