ó
    µ'Ôiå  ã                   ó‚   • 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        ÚT/var/www/surfInsights/venv3-11/lib/python3.13/site-packages/setuptools/namespaces.pyÚinstall_namespacesÚInstaller.install_namespaces   s„   € Ø×'Ñ'Ó)ˆÞØØ×'Ñ'Ó)ˆØ�‰×Ñ˜HÔ%Ü�Š� (Ô+Ü�D×(Ñ(¨#Ó.ˆä�(˜D¬5×+=Ñ+=Ò>À!ð �L‰L˜Ô÷ ?×>Ö>ú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@   € Ø×'Ñ'Ó)ˆÜ�w‰w�~‰~˜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.   € Ü—g‘g×&Ñ& 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')z�m = 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   € Ü�C—I‘I˜c“NÓ#ˆØ�~‰~ÓˆØ×%Ñ%ˆ
Ø Ÿ^™^¨CÓ0Ñˆ�UÞØ×0Ñ0Ñ0ˆJØ�x‰x˜
Ó#¤f£hÑ.°Ñ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×9°rˆÜ”cœ'¤# d§o¡o°tÓ"<Ó=Ó>Ó?Ð?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“/Ò!Ø�I‰IŒK÷ Šeùs   ‚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%   