
    Oj                        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 dlmZ ddlm	Z	 dd	l
mZ er*d d
lmZ d dlmZ d dlmZ ddlmZ ddlmZ ddlmZ ddlmZ  ej        e          Zd,d!Zd-d'Zd.d+ZdS )/    )annotationsN)Any)Optional)TYPE_CHECKING)Union   )ops)PriorityDispatchResult)quoted_name)Column)Table   )AutogenContext)AlterColumnOp)ModifyTableOps)Pluginautogen_contextr   alter_column_opr   schemaOptional[str]tnameUnion[quoted_name, str]cnamer   conn_colColumn[Any]metadata_colreturnr
   c                   | j         J | j         j        st          j        S |j        }|j        }||t          j        S ||_        ||k    r/||_        t                              d||           t          j	        S t          j        S )NzDetected column comment '%s.%s')
dialectsupports_commentsr
   CONTINUEcommentexisting_commentmodify_commentloginfoSTOP)	r   r   r   r   r   r   r   metadata_commentconn_col_comments	            y/lsinfo/ai/hellotax_ai/training_center/backend/venv/lib/python3.11/site-packages/alembic/autogenerate/compare/comments.py_compare_column_commentr+      s     "..."4 /%..#+'$4$<%..'7O$+++)9&2E5AAA%**%..    modify_table_opsr   
conn_tableOptional[Table]metadata_tablec                   | j         J | j         j        st          j        S ||t          j        S |j        |j        t          j        S |j        G|j        @|j                            t          j        ||j        |                     t          j        S |j        |j        k    rF|j                            t          j	        ||j        |j        |                     t          j        S t          j        S )N)r#   r   )
r   r    r
   r!   r"   r	   appendDropTableCommentOpr'   CreateTableCommentOp)r   r-   r   r   r.   r0   s         r*   _compare_table_commentr5   7   s    "..."4 /%.. ^3%..!n&<&D%..%**<*H##"
(:6  	
 	
 	

 &**		:#5	5	5##$&!+!3	  	
 	
 	
 &**!**r,   pluginr   Nonec                v    |                      t          dd           |                      t          dd           d S )Ncolumncommentstable)add_autogenerate_comparatorr+   r5   )r6   s    r*   setupr=   `   sP    
&&  
 &&    r,   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r
   )r   r   r-   r   r   r   r   r   r.   r/   r0   r/   r   r
   )r6   r   r   r7   )
__future__r   loggingtypingr   r   r   r   
operationsr	   utilr
   sqlalchemy.sql.elementsr   sqlalchemy.sql.schemar   r   apir   operations.opsr   r   runtime.pluginsr   	getLogger__name__r%   r+   r5   r=    r,   r*   <module>rK      sk   " " " " " "                                      * * * * * * 	*333333,,,,,,++++++$$$$$$//////000000))))))g!!/ / / /:&+ &+ &+ &+R
 
 
 
 
 
r,   