
    ͆h                       S SK Jr  SrS SKrS SKrS SKrS SKrS SKrS SKrS SK	r	S SK
rS SKJrJrJrJrJrJr  S SKrSSKJrJr  \R.                  " S\ 35      rSrS	S
1rS1rSR;                  5       r1 \kS \ 5       krSr SS jr!SS jr"\RF                  " SS9SS j5       r$\RJ                  " SS9 " S S5      5       r&SSS jjr'  S     SS jjr(g)     )annotationsz0.2.0N)IOAnyBinaryIO
CollectionMappingSequence   )cache	yaml_utilzmkdocs.zChttps://raw.githubusercontent.com/mkdocs/catalog/main/projects.yamlmkdocsreadthedocssearchzabbr admonition attr_list codehilite def_list extra fenced_code footnotes md_in_html meta nl2br sane_lists smarty tables toc wikilinks legacy_attrs legacy_emc              #  ,   #    U  H
  nS U 3v   M     g7f)zmarkdown.extensions.N ).0es     P/opt/services/DDDS/venv/lib/python3.13/site-packages/mkdocs_get_deps/__init__.py	<genexpr>r      s     >*=QQC *=s   r   c                   UR                  S5      u  p#n X   n [	        U [
        5      (       ah  U n0 n [        U5       HU  n[	        U[        5      (       a"  [        U5      S:X  a  U R                  U5        M:  [	        U[        5      (       d  MQ  0 X'   MW     U(       d  U $ [        X5      $ ! [        [        4 a	    [        s $ f = f)z
Receives a string such as 'foo.bar' and returns `cfg['foo']['bar']`, or `_NotFound`.

A list of single-item dicts gets converted to a flat dict. This is intended for `plugins` config.
.r
   )	partitionKeyError	TypeError	_NotFound
isinstancelistreverseddictlenupdatestr_dig)cfgkeyskey_restorig_cfgitems          r   r#   r#   #   s     >>#&LCDh #tX&D$%%#d)q.

4 D#&&		 '
 
? i  s   B+ +CCc                H    [        U [        5      (       a  U 4$ [        U 5      $ N)r   r"   tuple)objs    r   _stringsr/   ;   s     #svSz    )maxsizec                    [         R                  S:  a  SSKJn  OSSKJn  U" U S9 Vs0 s H  o"R
                  U_M     nn[        R                  SU  S[        U5       35        U$ s  snf )N)   
   r   )entry_points)groupzAvailable 'z' entry points: )	sysversion_infoimportlib.metadatar5   importlib_metadatanamelogdebugsorted)r6   r5   epepss       r   _entry_pointsrA   B   s_    
7"33!-E!:
;!:277B;!:C
;IIE7"26#;-@AJ <s   A(T)frozenc                  4    \ rS rSr% S\S'   S\S'   SS jrSrg)	_PluginKindN   r"   projects_keyentry_points_keyc                >    U R                   R                  S5      S   $ )Nr'   )rF   
rpartition)selfs    r   __str___PluginKind.__str__S   s      ++C044r0   r   N)returnr"   )__name__
__module____qualname____firstlineno____annotations__rL   __static_attributes__r   r0   r   rD   rD   N   s    5r0   rD   c                Z   U c  [         n [        R                  R                  U 5      R                  S;   a*  [
        R                  " U [        R                  " SS95      nO%[        U S5       nUR                  5       nS S S 5        [        R                  " W5      $ ! , (       d  f       N$= f)N)httphttpsr
   )daysrb)DEFAULT_PROJECTS_FILEurllibparseurlsplitschemer   download_and_cache_urldatetime	timedeltaopenreadioBytesIO)pathcontentfs      r   get_projects_fileri   W   s{    |$||T"))->>..tX5G5GQ5OP$ffhG ::g s   -B
B*c                .
  ^ U cP  [         R                  R                  S5      (       a  Sn O)[         R                  R                  S5      (       a  Sn OSn [        U [        [         R
                  45      (       a,  [         R                  R                  U 5      n [        U S5      nOU n[        R                  SU  35        U   [        R                  " U5      mSSS5        [        T[        5      (       d  [        S[        T5       35      e[        5       n[!        U4S jS 5       5      (       a  [        R#                  S	U < S
35        O9[%        TS5      [&        S4;  a  UR)                  S5        OUR)                  S5         TS   S   nU(       a  U1O	[        5       n[        [1        [%        TS5      5      5      n[        [1        [%        TS5      5      5      n[3        SS5      U[4        -
  4[3        SS5      U[6        -
  4[3        SS5      U[8        -
  44nU H)  u  p[        R                  SU	 S[;        U
5       35        M+     Uc
  [=        5       nU   [>        R@                  " U[        RB                  S9S   nSSS5        W GHd  nU GHY  u  p[1        UR/                  U	RD                  S5      5      nU GH'  nSU;   aW  UbT  U	RD                  S:X  aD  URG                  U S35      (       a+  U[I        U5      S-   S U
;   a  X;  a  U[I        U5      S-   S nX;   d  Mh  S U;   a  US    nO8S!U;   a  S"RK                  U5      nO [        RM                  S#U	 S$U S%U 35        M  UR)                  U5        UR/                  S&0 5      RO                  5        H5  u  nn[%        TU5      [&        Ld  M  URQ                  [1        U5      5        M7     U
RS                  U5        GM*     GM\     GMg     U H  u  p[;        U
5       H  nSn[U        U	RV                  5      R/                  U5      nUb#  URX                  b  URX                  RZ                  n[	        U	5      R]                  5        S$U S'3nUb,  US(-  nU(       a	  US)U S*3-  n[        R_                  U5        M  [        R#                  U5        M     M     [;        U5      $ ! , (       d  f       GN= f! [*        [,        4 a    TR/                  S5      n GNsf = f! , (       d  f       GN= f)+a  
Print PyPI package dependencies inferred from a mkdocs.yml file based on a reverse mapping of known projects.

Args:
    config_file: Non-default mkdocs.yml file - content as a buffer, or path.
    projects_file: File/buffer that declares all known MkDocs-related projects.
        The file is in YAML format and contains `projects: [{mkdocs_theme:, mkdocs_plugin:, markdown_extension:}]
Nz
mkdocs.ymlzmkdocs.yamlrY   zLoading configuration file: zHThe configuration is invalid. Expected a key-value mapping but received c              3  ,   >#    U  H	  oT;  v   M     g 7fr,   r   )r   cr$   s     r   r   get_deps.<locals>.<genexpr>   s     
Z!YAC<!Ys   )	site_namethemepluginsmarkdown_extensionsz	The file z, doesn't seem to be a mkdocs.yml config fileztheme.localeenzmkdocs[i18n]r   ro   r;   rp   rq   mkdocs_themezmkdocs.themesmkdocs_pluginzmkdocs.pluginsmarkdown_extensionzmarkdown.extensionszWanted zs: )Loaderprojectsr   /r
   pypi_id	github_idz"git+https://github.com/{github_id}zCan't find how to install z 'z ' although it was identified as extra_dependenciesz+' is not provided by any registered projectz but is installed locallyz from '')0osrf   isfiler   r"   PathLikeabspathrb   r<   r=   r   	yaml_loadr   
ValueErrortypesetallwarningr#   r   addr   r   getr/   rD   BUILTIN_THEMESBUILTIN_PLUGINSBUILTIN_EXTENSIONSr>   ri   yamlload
SafeLoaderrF   
startswithr    
format_maperroritemsr!   removerA   rG   distr;   
capitalizeinfo)config_fileprojects_fileopened_config_filepackages_to_installro   themesrp   
extensionswanted_pluginskindwantedrw   project	available
entry_nameinstall_name	extra_key
extra_pkgs	dist_namer?   r   r$   s                        @r   get_depsr   b   s    77>>,''&KWW^^M**'K&K+R[[122ggook2!+t4(II,[M:;	!!"45 
c4  VW[\_W`Vab
 	
 %

Z!Y
ZZZi.Z[\^$Y,==##N3##H-!GV$ eW35F(4Y/01GXd3(=>?@J 
^_	5v7NO	_&6	7?9RS	)+@	A:PbCbcN
 '		GD6VF^$456 ' )+	99]93G3GHT 
 *LD T->->!CDI'
:%)))_<"--qk::"3u:>#34>"0!+CJN,<!=J' G+'.y'9$/'K'V'VW^'_		8bLlmtluv !'++L918=QSU1V1\1\1^-	:Y/y@/66x
7KL 2_ MM*-3 ( + < ' .JIt44599*EB~"''"5GGLL	t9'')*"ZL8cd  ~66155G!G$ ) '" %&&m 
	& i  ! !" 
s*   SS 'T
S!TT
T)r%   r"   )rN   zSequence[str])r6   r"   rN   zMapping[str, Any]r,   )rf   z
str | NonerN   r   )NN)r   zIO | os.PathLike | str | Noner   z	IO | NonerN   zCollection[str]))
__future__r   __version__dataclassesr`   	functoolsrd   loggingr}   r7   urllib.parser[   typingr   r   r   r   r   r	   r    r   r   	getLoggerrO   r<   rZ   r   r   split_BUILTIN_EXTENSIONSr   r   r#   r/   	lru_cacherA   	dataclassrD   ri   r   r   r0   r   <module>r      s   "    	  	 
  C C  '(,- ^ M** v  |  |  ~ >*=> 
 	0 T" # d#5 5 $5 26#q'.q'q' q'r0   