o
    wie                     @   s   d dl Z d dlmZ d dlmZ d dlmZmZ dZeG dd deZ	de
d	dfd
dZdde
d	dfddZedkrFee jdd   dS dS )    N)Path)	find_spec)Protocolruntime_checkablez__title__ = 'prisma'c                   @   s   e Zd ZdefddZdS )SourceLoaderreturnc                 C   s   d S )N )selfr   r   N/home/app/Keep/.python/lib/python3.10/site-packages/prisma_cleanup/_cleanup.pyget_filename   s    zSourceLoader.get_filenameN)__name__
__module____qualname__strr   r   r   r   r
   r   	   s    r   argsr   c                  G   s    | r| d }nd}t |d d S )Nr   prisma)pkg_name)cleanup)r   r   r   r   r
   main   s   
r   r   r   c                 C   s   t | }|du rtd|  |j}|du rtd|  t|ts)td| t| }t| vr9td|j	d }|
 rF|  ddlm} ||j	d	 td
|  dS )zCRemove python files that are auto-generated by Prisma Client PythonNzCould not resolve package: zNo loader defined for: z%Received unresolvable import loader: zGThe given package does not appear to be a Prisma Client Python package.z	client.pyr   )cleanup_templates)rootdirz3Successfully removed all auto-generated files from )r   RuntimeErrorloader
isinstancer   r   r   PRISMA_INIT_CONTENTS	read_textparentexistsunlinkZprisma.generator.generatorr   print)r   specr   Zpkg_pathfiler   r   r   r
   r      s"   

	r   __main__   )r   )syspathlibr   importlib.utilr   Ztyping_extensionsr   r   r   r   r   r   r   r   argvr   r   r   r
   <module>   s    	(