
    %$}g              
       0   d dl Z d dlZd dlZd dlmZ d dlZd dlmZ d dl	m
Z
 d dlmZ dZdZdZd	Zd
Z ej        ej                            ej                            e                                e e ed  ej        e                              e
z
            Zd  ej        e          D             Z ee                               ee                    Z ej        d          Z d Z!d Z"d Z#d Z$ddZ%e&dk    r e%             dS dS )    N)OrderedDict)RoundTripLoader)avoid_languages)combine_dictsz<../dateparser_data/cldr_language_data/date_translation_data/z/../dateparser_data/supplementary_language_data/zE../dateparser_data/supplementary_language_data/date_translation_data/z../dateparser/data/z)../dateparser/data/date_translation_data/c                     | d d         S N )xs    f/var/www/py-google-trends/myenv/lib/python3.11/site-packages/dateparser_scripts/write_complete_data.py<lambda>r      s    af     c                 "    g | ]}|d d         S r   r
   ).0r   s     r   
<listcomp>r      s     TTTa1SbS6TTTr   z\{0\}c                     t                      }|                                 D ]?\  }}t          |          D ]%\  }}t                              d|          }|||<   &|||<   @|S )Nz(\\d+[.,]?\\d*))r   items	enumerateRELATIVE_PATTERNsub)relative_datamodified_relative_datakeyvalueistrings         r   _modify_relative_datar      s{    (]]#))++ , ,
U"5)) 	 	IAv%))*<fEEFE!HH&+s##!!r   c                     |                      di           }t          |          }|                      di           }|                                D ]*\  }}|                     di           }t          |          }+d S )Nzrelative-type-regexlocale_specific)getr   r   )language_datar   locale_specific_data_infolocale_relative_datas         r   _modify_datar&   )   s    !%%&;R@@M)-88M(,,->CC'--// K K4#xx(=rBB45IJJK Kr   c                    i }i }| t           v rMt          t          | z   dz             5 }t          j        |t
                    }d d d            n# 1 swxY w Y   | t          v r`t          t          | z   dz             5 }t          t          |          	                                          }d d d            n# 1 swxY w Y   t          ||          }d|vr| |d<   |S )Nz.json)object_pairs_hookz.yamlname)cldr_languagesopencldr_date_directoryjsonloadr   supplementary_languagessupplementary_date_directoryr   get_datar   )language	cldr_datasupplementary_datafgcomplete_datas         r   #_get_complete_date_translation_datar8   2   s{   I>!!%07:;; 	Dq	!{CCCI	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D***.9GCDD 	L!,_Q-?-?-H-H-J-J!K!K	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L!)-?@@M]"" (fs#   AAA>/B99B= B=c                     |r||| <   d S t          | |          5 }|                    |           d d d            d S # 1 swxY w Y   d S )N)r+   write)filenametextmode	in_memoryin_memory_resultouts         r   _write_filerA   A   s     %)"""(D!! 	SIIdOOO	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   =AAFc                 V   i }| st           j                            t                    st          j        t                     t           j                            t
                    rt          j        t
                     t          j        t
                     t          t          dz             5 }t          |                                          }ddd           n# 1 swxY w Y   t          D ]}t          |          }t          ||          }t          |           t!          j        |ddd          }d|z   dz                       d	          }t'          t
          |z   d
z   |d| |           d}t'          t          dz   |dd|           t'          t
          dz   ddd|           |S )a7  
    This function is responsible of generating the needed py files from the
    CLDR files (JSON format) and supplementary language data (YAML format).

    Use it with in_memory=True to avoid writing real files and getting a
    dictionary containing the file names and their content (used when testing).
    zbase_data.yamlN   ),z: F)indent
separatorsensure_asciizinfo = 
zutf-8z.pywbzsfrom dateparser.data import date_translation_data
from .languages_info import language_order, language_locale_dict
z__init__.pyw )ospathisdirtranslation_data_directorymkdirdate_translation_directoryshutilrmtreer+   supplementary_directoryr   r1   all_languagesr8   r   r&   r-   dumpsencoderA   )	r>   r?   r5   	base_datar2   date_translation_datatranslation_dataout_text	init_texts	            r   write_complete_datar]   I   s     -w}}788 	1H/0007==344 	6M4555
+,,,	%(88	9	9 2Q#A&&//11	2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 " 
 
 CH M M -.CY O O*+++:!!RW
 
 
  0047??HH&1E9	
 	
 	
 	
	M 
 "]2   "]2BUDT   s   /"CC!$C!__main__)F)'r-   rL   rR   collectionsr   regexreruamel.yamlr   "dateparser_scripts.order_languagesr   dateparser_scripts.utilsr   r,   rT   r0   rO   rQ   chdirrM   dirnameabspath__file__listsetmaplistdirr*   r/   unionrU   compiler   r   r&   r8   rA   r]   __name__r
   r   r   <module>rp      s    				  # # # # # #     ' ' ' ' ' ' > > > > > > 2 2 2 2 2 2T K K  3 H  22	3	3 4 4 4Cjbj)<==>>??/Q  UT:2:6R+S+STTT N##))##.E*F*FGG2:h'' " " "K K K    4 4 4 4n z r   