
    Ji                         S SK r S SKrSSKJr  S SKJr  \ R                  R                  r " S S5      r	 " S S\	5      r
g)	    N   )py312)logc                   f    \ rS rSrSrSS jrSS jrS rS rSr	 S	r
 S
 rS rS r\S 5       rSrg)	Installer   z
-nspkg.pthNc                 l   U R                  5       nU(       d  g U R                  5       nU R                  R                  U5        [        R
                  " SU5        [        U R                  U5      n[        US[        R                  S9 nUR                  U5        S S S 5        g ! , (       d  f       g = f)NzInstalling %swt)encoding)_get_all_ns_packages_get_nspkg_fileoutputsappendr   infomap_gen_nspkg_lineopenr   PTH_ENCODING
writelines)selfnspfilenamelinesfs        W/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/setuptools/namespaces.pyinstall_namespacesInstaller.install_namespaces   s    '')'')H%(+D((#.(D5+=+=>! LL ?>>s   
B%%
B3c                     U R                  5       n[        R                  R                  U5      (       d  g [        R
                  " SU5        [        R                  " U5        g )NzRemoving %s)r   ospathexistsr   r   remove)r   r   s     r   uninstall_namespacesInstaller.uninstall_namespaces   s@    '')ww~~h'')
		(    c                 |    [         R                  R                  U R                  5       5      u  pXR                  -   $ N)r   r    splitext_get_target	nspkg_ext)r   r   _s      r   r   Installer._get_nspkg_file#   s.    gg&&t'7'7'9:..((r%   c                     U R                   $ r'   )targetr   s    r   r)   Installer._get_target'   s    {{r%   )zimport sys, types, osz$p = os.path.join(%(root)s, *%(pth)r)z(importlib = __import__('importlib.util')z!__import__('importlib.machinery')zm = sys.modules.setdefault(%(pkg)r, importlib.util.module_from_spec(importlib.machinery.PathFinder.find_spec(%(pkg)r, [os.path.dirname(p)])))zCm = m or sys.modules.setdefault(%(pkg)r, types.ModuleType(%(pkg)r))z7mp = (m or []) and m.__dict__.setdefault('__path__',[])z(p not in mp) and mp.append(p))z4m and setattr(sys.modules[%(parent)r], %(child)r, m)c                     g)Nz$sys._getframe(1).f_locals['sitedir'] r/   s    r   	_get_rootInstaller._get_root?   s    5r%   c                     [        UR                  S5      5      nU R                  5       nU R                  nUR	                  S5      u  pVnU(       a  X@R
                  -  nSR                  U5      [        5       -  S-   $ )N.;
)tuplesplitr3   _nspkg_tmpl
rpartition_nspkg_tmpl_multijoinlocals)r   pkgpthroot
tmpl_linesparentsepchilds           r   r   Installer._gen_nspkg_lineB   sj    CIIcN#~~%%
 ^^C0U000Jxx
#fh.55r%   c           
          U R                   R                  =(       d    / n[        [        [	        [        U R                  U5      5      5      5      $ )z,Return sorted list of all package namespaces)distributionnamespace_packagessortedsetflattenr   
_pkg_names)r   pkgss     r   r   Installer._get_all_ns_packagesK   s8      339rc'#doot"<=>??r%   c              #      #    U R                  S5      nU(       a-  SR                  U5      v   UR                  5         U(       a  M,  gg7f)z
Given a namespace package, yield the components of that
package.

>>> names = Installer._pkg_names('a.b.c')
>>> set(names) == set(['a', 'a.b', 'a.b.c'])
True
r6   N)r:   r>   pop)r@   partss     r   rN   Installer._pkg_namesP   s5      		#((5/!IIK es   AA	A	r2   )returnN)__name__
__module____qualname____firstlineno__r*   r   r#   r   r)   r;   r=   r3   r   r   staticmethodrN   __static_attributes__r2   r%   r   r   r      sT    I )K  (Q;66@
  r%   r   c                        \ rS rSrS rS rSrg)DevelopInstaller`   c                 >    [        [        U R                  5      5      $ r'   )reprstregg_pathr/   s    r   r3   DevelopInstaller._get_roota   s    C&''r%   c                     U R                   $ r'   )egg_linkr/   s    r   r)   DevelopInstaller._get_targetd   s    }}r%   r2   N)rV   rW   rX   rY   r3   r)   r[   r2   r%   r   r]   r]   `   s    (r%   r]   )	itertoolsr   compatr   	distutilsr   chainfrom_iterablerM   r   r]   r2   r%   r   <module>rl      s9     	  
//
'
'R Rjy r%   