
    wi'                     X   d dl mZmZmZmZmZ d dlmZ ddlmZm	Z	 ddl
mZmZ ddlmZ ddlmZmZmZmZ  G d d	e	          Z G d
 de	          Z G d de	          Z G d de	          Z G d d          Z edd           G d de                      Z G d d          ZdS )    )DictListOptionalTupleUnion)
deprecated   )KakasiPyKakasiException)ItaijiJConv)Ch)A2H2K2Sym2c                       e Zd ZdS )UnsupportedRomanRulesExceptionN__name__
__module____qualname__     _/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/pykakasi/legacy.pyr   r              Dr   r   c                       e Zd ZdS )UnknownOptionsExceptionNr   r   r   r   r   r      r   r   r   c                       e Zd ZdS )InvalidModeValueExceptionNr   r   r   r   r    r       r   r   r    c                       e Zd ZdS )InvalidFlagValueExceptionNr   r   r   r   r"   r"      r   r   r"   c                   T   e Zd ZU g dZee         ed<   g dZee         ed<   g dZee         ed<   d Z	ded	ee
eef                  fd
Z edd          dedeeeef                  d	dfd            Z edd          d             Z edd          ded	efd            ZdS )kakasiJHKEa_keys)r*   r)   r'   r(   _values)HepburnKunreiPassport_roman_valsc           	          t                      | _        i | _        d d d d d d| _        dddddd| _        ddddddddd| _        ddi| _        d| _        d| _        d S )Nr%   FT)psfcCUutrr-    )	r
   _kakasi_conv_mode_furi_flag_option
_separator_separator_stringselfs    r   __init__zkakasi.__init__%   s    xx

 

 
 

 	
 	

 Y'!$r   textreturnc                 6    | j                             |          S N)r<   convertrE   rG   s     r   rK   zkakasi.convertF   s    |##D)))r    @ Old API will be removed in v3.0.versionreasonfrtoNc                    || j         v r|d | j        |<   d S t          |t                    rN|d         | j        v r?|d         | j        |<   t          |          dk    r|d         dk    rd| j        |<   d S d S d S t          d          || j        	                                v r0t          |t                    r|| j        |<   d S t          d          |dk    r9t          |t                    r|| j        v r|| j        d<   d S t          d	          |d
k    r-t          |t                    r	|| _        d S t          d          t!          d          )Nr      r	   FTzInvalid value for modeInvalid flag valuer:   zUnknown roman table nameSzIncompatible separator valueUnhandled options)r+   r>   
isinstancestrr,   lenr?   r    r@   keysboolr"   r0   rA   r   rB   r   rE   rR   rS   s      r   setModezkakasi.setModeJ   sr   z!%
2B$$ JA$,)>)>!#A
2r77a<<BqESLL%)DJrNNN  <LL 00HIII4:??$$$$"d## F!#
2/0DEEE3YY"c"" QrT-='='=$&S!!!45OPPP3YY"c"" P"$/0NOOO)*=>>>r   c                    t          | j        d         | j        d                   | j        d<   t	          | j        d         | j        d                   | j        d<   t          | j        d         | j        d                   | j        d<   t          | j        d                   | j        d<   t          | j        d                   | j        d<   | S )Nr&   r:   )methodr'   r(   r)   r*   )J2r>   rA   r=   r   r   r   r   rD   s    r   getConverterzkakasi.getConverterg   s    TZ_T\#5FGGG
3TZ_T\#5FGGG
3TZ_T\#5FGGG
3tz#//
3TZ_--
3r   c                    d}d}d}	 |t          |          k    rn| j        d                             ||                   rd}n| j        d                             ||                   rd}n}| j        d                             ||                   rd}nT| j        d                             ||                   rd}n+| j        d	                             ||                   rd	}nd
}|dv rt          ||z   t          |                    }| j        |                             |||                   \  }}|dk    r||||z            }	|}
||z  }n|||dz            }	| j        d         r|	}
nd}
|dz  }n|dv rpd}	d}
|t          |          k     rW||         dv r| j        |         /t          |
          dk    r|	||         z  }	|
|
d         z   }
|dz  }nt          |
          dk    r|	||         z  }	|
dz  }
|dz  }n|	||         z  }	|
||         z  }
|dz  }n| j        |                             ||                   rt          ||z   t          |                    }| j        |                             |||                   \  }}|dk    r|	||||z            z  }	|
|z  }
||z  }n&|||dz            }	| j        d         r|	}
nd}
|dz  }nn|t          |          k     Wn|||         z  }|dz  }|dv rC| j        d         r|
                                }
n!| j        d         r|
                                }
|| j	        v r| j
        |         r||	dz   |
z   dz   z  }n||
z  }| j        d         rW|t          | j                   d          | j        k    r1|t          |          k     r||         t          j        vr
|| j        z  }|S )N     r   Tr&   r'   r(   r)   r*   o)r&   r)   r	   r9   z???)r'   r(   r*   u   ー―−ｰ-r7   r6   []r3   )r\   r=   isRegionminrK   r@   r>   upper
capitalizer+   r?   rB   r   endmark)rE   rG   _MAXLENotextimodewr9   l1origchunks              r   doz	kakasi.dop   s^   e	)CII~~z#''Q00 C))$q'22 	C))$q'22 C))$q'22 C))$q'22 z!!GSYY//*T*224!9==B66AF
+DEGAAAE	?Dz# & $ %FAA((#d))mmAw"<<<  :d+7CJJNN DGOD$)E"I$5EFAA ZZ1__ DGOD!SLEFA! DGOD!T!W,EFA!D)2247;; GSYY77"&*T"2":":4!9"E"EB66 DQV$44D!QJEGAA#'AE	?D#z# .(,(-FA! O #d))mmT a Qz!!:c? /!KKMMEEZ_ /!,,..Etz!!dj&6!e+c11 
3)3t///112doEED		MMG2:--(Ke	)N r   )r   r   r   r+   r   r[   __annotations__r,   r0   rF   r   rK   r   r   r   r^   r`   rd   rz   r   r   r   r$   r$      sm        000E49000---GT#Y--->>>Kc>>>% % %B*C *Dc3h$8 * * * * Z$FGGG?# ?8E$),<#= ?$ ? ? ? HG?8 Z$FGGG  HG Z$FGGGks ks k k k HGk k kr   r$   rM   rN   rO   c                   d     e Zd Z fdZd Zdedeeeef                  ddfdZ	dedefd	Z
 xZS )
wakatic                     t          t          |                                            t                      | _        d| _        d S )NT)superr}   rF   r   _jconv_state)rE   	__class__s    r   rF   zwakati.__init__   s5    fd$$&&&ggr   c                     | S rJ   r   rD   s    r   rd   zwakati.getConverter   s    r   rR   rS   rH   Nc                     || j                                         v r>t          |t                    r|| j         |<   nt	          d          t          d          d S )NrW   rY   )r@   r]   rZ   r^   r"   r   r_   s      r   r`   zwakati.setMode   s_    """""d## F!#
2/0DEEE)*=>>> #"r   rG   c                    t          |          dk    rdS d}d}|t          |          k     r#| j                            ||                   r| j                            ||d          d          \  }}|dk    r|||         z   }|dz  }d| _        n||z   t          |          k     rM| j        r|||||z            z   | j        z   }n'|| j        z   ||||z            z   | j        z   }d| _        ||z   }nH| j        r|||||z            z   }n|| j        z   ||||z            z   }n+d| _        |||         z   }|dz  }|t          |          k     #|S )Nr   rg   r	   FT)r\   r   rm   rK   r   rB   )rE   rG   rs   rt   _lns         r   rz   z	wakati.do   s   t99>>2#d))mm{##DG,, ++DHb99277!DGOEFA"'DKK"fD		)){ + %QRZ(8 84? J % 7$q1r6z:J JT_ \&*BAA{ K %QRZ(8 8 % 7$q1r6z:J J $QQ1 #d))mm4 r   )r   r   r   rF   rd   r[   r   r   r^   r`   rz   __classcell__)r   s   @r   r}   r}      s            
  ?# ?8E$),<#= ?$ ? ? ? ?!s !s ! ! ! ! ! ! ! !r   r}   c                   T    e Zd ZddedefdZdefdZdeeef         fd	Zd
 Z	d Z
dS )rc   r'   r-   ru   rb   c                     t                      | _        t                      | _        |dk    r| j        | _        d S |dv r#t          ||          | _        | j        | _        d S | j	        | _        d S )Nr'   )r*   r(   )
r   _itaijir   r   	convert_hrK   r   _hconvconvert_nonhconvert_noop)rE   ru   rb   s      r   rF   zJ2.__init__  sf    xxgg3;;>DLLLZT6**DK,DLLL,DLLLr   r5   c                     dt          |d                   cxk    odk     nc p,| j                            t          |d                             S )Ni 4  r   i   )ordr   haskey)rE   r5   s     r   rm   zJ2.isRegion!  sM    QqT++++V++++Mt|/B/B3qt99/M/MMr   rH   c                 8    | j                             |d          S )Nrg   )r   rK   )rE   itexts     r   r   zJ2.convert_h$  s    {""5"---r   c                 .   |                      |d                   sdS |                     |          \  }}|dk    rdS d}d}	 |t          |          k    rn<| j                            ||d                    \  }}|dk    r|dz   }n
||z   }||z   }P||fS )Nr   )rg   r   rg   Tr	   )rm   r   r\   r   rK   )rE   rG   r9   rw   mrs   r3   ns           r   r   zJ2.convert_nonh'  s    }}T!W%% 	5..&&B775	"CFF{{[((122//FQAvvEE		" byr   c                     |d         dfS )Nr   r	   r   rL   s     r   r   zJ2.convert_noop>  s    Awzr   N)r'   r-   )r   r   r   r[   rF   rm   r   intr   r   r   r   r   r   rc   rc     s        	- 	-S 	- 	- 	- 	- 	-N# N N N N.%S/ . . . .  .    r   rc   N)typingr   r   r   r   r   r   r$   r
   r   kanjir   r   
propertiesr   scriptsr   r   r   r   r   r   r    r"   r}   rc   r   r   r   <module>r      s  
 6 5 5 5 5 5 5 5 5 5 5 5 5 5 ! ! ! ! ! ! - - - - - - - -                       % % % % % % % % % % % %	 	 	 	 	%6 	 	 		 	 	 	 	/ 	 	 		 	 	 	 	 1 	 	 		 	 	 	 	 1 	 	 	} } } } } } } }@ C BCCC2 2 2 2 2V 2 2 DC2j* * * * * * * * * *r   