o
    : h:(                     @   s  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 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 d dlmZ d dlmZ d dlm Z! e " dd Z#e#$ edd Ze#$ e j%ddddde j%dddde j%dddd de j%d!dd"ded#d$ Ze#$ e j%ddddde j%d%d&dd'de j%d(dd)de j%d*dd+de j%d,d-d.de j%d/dd0de j%d1dd2de j%d3dd4de j%d5dd6ded7d8 Ze#$ e j%ddddde j%d%d&dd'de j%d*dd+de j%d,d-d.de j%d/dd0de j%d1dd2de j%d3dd4de j%d5dd6de j%d9d:dd;d<ed=d> Z
e#$ e j%ddddde j&d8d-d?ed@dA Ze#$ e j%ddddde j%d%d&ddBde j%d1dd2de j%d5dd6de j&dCdDdEedFdG Ze#$ e j%ddddde j%d*dd+de j%dHddIde j%d9d:dd;d<e j&d8d-d?edJdK Ze#$ e j%ddddde j%d*dd+de j%dHddIde j%d9d:dd;d<e j&d8dLd?edMdN Ze#$ e j%ddddde j&d8d-d?edOdP Ze#$ e j%ddddde j%dQdRddSde j%dTdUddVde j%dWdXddYdedZd[ Ze#$ e j%ddddde j%dTdUddVde j%d\dd]ded^d_ Ze#$ e j%ddddde j%dTdUddVded`da Ze#$ e j%ddddde j%dTdUddVdedbdc Ze#$ e j%ddddde j%d*dd+de j%dHddIde j&d8d-d?eddde Ze#$ e j%dddddedfdg Z dS )h    N)with_appcontext)list_templates)init)revision)migrate)edit)merge)upgrade)	downgrade)show)history)heads)branches)current)stamp)checkc                   C   s   dS )zPerform database migrations.N r   r   r   Y/var/www/html/figdemos/bartoux_crm/venv/lib/python3.10/site-packages/flask_migrate/cli.pydb   s   r   c                   C   s
   t   dS )zList available templates.N)_list_templatesr   r   r   r   r      s   
r   z-dz--directoryz4Migration script directory (default is "migrations"))defaulthelpz	--multidbTzSupport multiple databases)is_flagr   z-tz
--templatez/Repository template to use (default is "flask")z	--packagezFWrite empty __init__.py files to the environment and version locationsc                 C      t | ||| dS )z#Creates a new migration repository.N)_init)	directorymultidbtemplatepackager   r   r   r   !   s   r   z-mz	--messagezRevision messagez--autogeneratezfPopulate revision script with candidate migration operations, based on comparison of database to modelz--sqlz<Don't emit SQL to database - dump to standard output insteadz--headheadzBSpecify head revision or <branchname>@head to base new revision onz--splicez6Allow a non-head revision as the "head" to splice ontoz--branch-labelz3Specify a branch label to apply to the new revisionz--version-pathz2Specify specific path from config for version filez--rev-idz9Specify a hardcoded revision id instead of generating onec	           	   
   C      t | ||||||||	 dS )zCreate a new revision file.N)	_revision)	r   messageautogeneratesqlr   splicebranch_labelversion_pathrev_idr   r   r   r   1   s   r   z-xz--x-argz6Additional arguments consumed by custom env.py scripts)multipler   c	           	   
   C   r    )zJAutogenerate a new revision file (Alias for
    'revision --autogenerate')N)_migrate)	r   r"   r$   r   r%   r&   r'   r(   x_argr   r   r   r   O   s   r   )r   c                 C      t | | dS )zEdit a revision fileN)_editr   r   r   r   r   r   m      r   zMerge revision message	revisions)nargsc                 C      t | |||| dS )z:Merge two revisions together, creating a new revision fileN)_merge)r   r"   r&   r(   r0   r   r   r   r   w   s   r   z--tagz;Arbitrary "tag" name - can be used by custom env.py scriptsc                 C   r3   )zUpgrade to a later versionN)_upgrader   r$   tagr+   r   r   r   r   r	         r	   z-1c                 C   r3   )zRevert to a previous versionN)
_downgrader6   r   r   r   r
      r8   r
   c                 C   r,   )z.Show the revision denoted by the given symbol.N)_showr.   r   r   r   r      r/   r   z-rz--rev-rangez1Specify a revision range; format is [start]:[end]z-vz	--verbosezUse more verbose outputz-iz--indicate-currentz?Indicate current version (Alembic 0.9.9 or greater is required)c                 C   r   )z.List changeset scripts in chronological order.N)_history)r   	rev_rangeverboseindicate_currentr   r   r   r      s   r   z--resolve-dependenciesz+Treat dependency versions as down revisionsc                 C   s   t | || dS )z4Show current available heads in the script directoryN)_heads)r   r=   resolve_dependenciesr   r   r   r      s   	r   c                 C   r,   )zShow current branch pointsN)	_branchesr   r=   r   r   r   r      r/   r   c                 C   r,   )z/Display the current revision for each database.N)_currentrB   r   r   r   r      r/   r   c                 C   s   t | ||| dS )zP'stamp' the revision table with the given revision; don't run any
    migrationsN)_stamp)r   r$   r7   r   r   r   r   r      s   r   c                 C   s   t |  dS )z0Check if there are any new operations to migrateN)_check)r   r   r   r   r      s   r   )'click	flask.clir   flask_migrater   r   r   r   r   r!   r   r*   r   r-   r   r4   r	   r5   r
   r9   r   r:   r   r;   r   r?   r   rA   r   rC   r   rD   r   rE   groupr   commandoptionargumentr   r   r   r   <module>   s   




















