
    ͆h\                        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rS SK	r	S SK
r
S SKJrJr  S SKJrJr  S SKJr  S SKJr  S SKJr  S SKJrJr  S SKJr  S S	KJrJr  S
SKJ r   S
SK!J"r"   " S S\\    5      r#SS jr$S S\%S\%S\%4S jjr&S\%4S jr'S!S\%S\(4S jjr)S\%4S jr*S!S\%S\(S\(4S jjr+S\%4S jr,\RZ                  " S5      r.g)"    N)ForeStyle)distributionsversion)BytesIO)slugify)MkDocsConfig)
BasePluginevent_priority)get_yaml_loader)ZipFileZIP_DEFLATED   )
InfoConfig)get_exclusion_patternsc                   n   ^  \ rS rSrU 4S jrS r\" S5      S 5       rS rS r	S r
S	\S
\4S jrSrU =r$ )
InfoPlugin2   c                 P   > [         TU ]  " U0 UD6  SU l        / U l        / U l        g )NF)super__init__is_serveexclusion_patternsexcluded_entries)selfargskwargs	__class__s      T/opt/services/DDDS/venv/lib/python3.13/site-packages/material/plugins/info/plugin.pyr   InfoPlugin.__init__5   s0    $)&)  #% "    c                    US:H  U l         g )Nserve)r   )r   commanddirtys      r   
on_startupInfoPlugin.on_startup@   s    7*r!   d   c                 $   U R                   R                  (       d  g U R                   R                  (       d  U R                  (       a  g Sn[        R
                  " USS9nUR                  R                  S5      R                  SS5      u  pE[        S5      nUR                  U5      (       d&  [        R                  S5        U R                  Xe5        U R                   R                  (       d  [        R                  " S5        [        R!                  S	5        UR"                  R$                  (       a%  [        R                  S
5        U R'                  5         UR(                  (       a%  [        R                  S5        U R'                  5         [+        UR,                  5      Ul        [.        R0                  R3                  UR,                  5      nUR"                  R$                  (       a  [+        UR"                  R$                  US9nOSnUR4                  R                  S5      n	U	(       a  [+        U	R                   R6                  US9n
OSn
[9        UR,                  5      n[;        U[<        5      (       d  U/n[=        [?        [@        [B        RD                  5      5      n[A        [.        RF                  " 5       5      n[=        [?        [@        UR,                  URH                  UU
/U Vs/ s H  oR                  SS5      PM     snQ5      5      nUR(                   H  n[+        UUS9nURK                  U5        M      [=        U5       H3  nU(       a  UR                  U5      (       d  M"  URM                  U5        M5     U(       a&  [        R                  S5        U RO                  U5        [Q        5       n[S        S5      n[.        R0                  RU                  U5      u  nnSRW                  U[Y        US5      /5      n[[        5       U l.        / U l/        [A        UR`                  5      R                  U5      (       a.  U R\                  RK                  [c        UR`                  5      5        U H?  nUR                  U5      (       d  M  U R\                  RK                  [c        U5      5        MA     [.        Rd                  " [.        RF                  " 5       5       Hk  u  nnnU H^  nURg                  5       S:w  a  M  [A        U5      nUU;  d  M,  [i        SU 35        U R\                  RK                  [c        U5      5        M`     Mm     U	(       a  [j        Rl                  " U	R                   Rn                  U
SS9 H^  n[.        R0                  RW                  U
U5      n[q        U5      n[c        UR`                  5      nU R\                  RK                  U5        M`     Sn/ n[s        US[t        S5       n[.        Rd                  " [.        RF                  " 5       5       GHW  u  nnnSU 3n[i        USSS9  [=        U5       H_  n[.        R0                  RW                  UU5      nU Rw                  U5      (       a  URM                  U5        ML  [y        USS9(       d  M]  SnMa     U H  n[.        R0                  RW                  UU5      nU Rw                  U5      (       a  M;  [y        USS9(       a  Sn[.        R0                  R{                  U[.        R0                  R|                  5      nUR                  U[.        R0                  RW                  UU5      5        M     [i        S[        U5      -  SSS9  GMZ     UR                  [.        R0                  RW                  US5      SRW                  [        [        5        V s/ s H*  n SRW                  U R                  U R                  /5      PM,     sn 5      5      5         [        R                  " 5       n!UR                  [.        R0                  RW                  US!5      [        R                  " [        R                  " 5       [        R                  " 5       [        R                  " 5       [.        RF                  " 5       SRW                  [        R                  S"   R                  [.        R                  S5      S#   /[        R                  SS  Q5      [.        R                  " S$S5      [.        R                  " S%S5      [        R0                  U R^                  S&.	[        S'S(9R                  U!S 5      5        UR                   Ht  n"S)U"R                  ;   a  [        R                  O[        R                  n#URK                  SRW                  U#U"R                  S[        U"R                  5      /5      5        Mv     S S S 5        UR                  5       n$[        U S*3S+5       nUR                  UR                  5       5        S S S 5        [        R!                  S,5        [i        [        R                  5        UR                  5         U H  n%[i        S-U% 35        M     [i        [        R                  5        [i        SRW                  S-WR                  S[        U$R                  S.5      /5      5        [i        [        R                  5        U$R                  S/:  a  [        R                  S05        U(       a  [        R                  S15        [        R                  " S5        g s  snf s  sn f ! [         a    S n! GNLf = f! , (       d  f       GN= f! , (       d  f       GNY= f)2Nz<https://github.com/squidfunk/mkdocs-material/releases/latestF)allow_redirectslocation/r   zmkdocs-materialz%Please upgrade to the latest version.z'Started archive creation for bug reportz#Please remove 'custom_dir' setting.zPlease remove 'hooks' setting.
abs_prefix zmaterial/projectsINHERITz)One or more paths aren't children of rootz*
Please name your bug report (2-4 words): -z
pyvenv.cfgzPossible inactive venv: T)pathnameroot_dir	recursiveazProcessing: )endflush)log_warning zrequirements.lock.txt
z==USERNAMEzplatform.jsonr   
PYTHONPATHVIRTUAL_ENV)	systemarchitecturepythoncwdr$   zenv:$PYTHONPATHzenv:$VIRTUAL_ENVzsys.pathr      )defaultindentz/.z.zipwbzArchive successfully created:z  
   i@B z0Archive exceeds recommended maximum size of 1 MBzArchive contains dotpaths, which could contain sensitive information.
Please review them at the bottom of the list and share only necessary data to reproduce the issue.)bconfigenabledenabled_on_server   requestsgetheadersrsplitr   
startswithlogerror_help_on_versions_and_exitarchivesysexitinfotheme
custom_dir _help_on_customizations_and_exithooks_convert_to_absconfig_file_pathospathdirnamepluginsprojects_dir
_load_yaml
isinstancelistmap
capitalizesitePREFIXESgetcwddocs_dirappendremove_help_on_not_in_cwdr   inputsplitextjoinr   r   r   r   site_dir_resolve_patternwalklowerprintglobiglobprojects_config_files_get_project_configr   r   _is_excluded_is_dotpathrelpathcurdirwritelenwritestrsortedr   namegetpassgetuser	ExceptionjsondumpsplatformrA   python_versionargvsepgetenvstrreplacefilelistfilenamer   LIGHTYELLOW_EXLIGHTBLACK_EX_sizecompress_size	getbufferopengetvaluer   NORMALsort	RESET_ALLnbyteswarning)&r   rI   urlres_currentpresentconfig_file_parentabs_custom_dirprojects_pluginabs_projects_dirloaded_configssite_prefixesrC   cfgpaths_to_validatehookr_   rT   exampleabs_rootdirnames	filenamesr   current_config_fileproject_configpatterncontains_dotpathfilesf	indicatorr   packageusernamer5   colorbufferfiles&                                         r   	on_configInfoPlugin.on_configG   s   {{""
 {{++ Mll3%8 [[__Z077Q?
+,!!'**II=>++G= {{""HHQK 	:; <<""II;<113 <<II67113
 #2&2I2I"JWW__V-D-DE <<"",''/N
  N !..,,-@A.&&33/ 
  " $F$;$;<.$//,-N
 ST]];<%
 !Z##OO	2

 1??ggi$?2
 "  LLD"46HID$$T* !
 *+D4??3//!((. ,
 IIAC$$%67 )EFWW%%g.
((GWWc%:;< #9": " foo&11#66##**+;FOO+LM
 "Ds##''../?/EF " .0WWRYY[-A)Hh	%>>#|3!(+},4TF;<++223CD3IJ & .B 

*11GG+ 
 ')ggll3CT&J#!45H!I*>+B+BC''..w7 "' Wc<71131E-(I*8*5	iT6 !ND77<<$7D ((.. -  #4t<<+/( + &D77<<$7D ((..  #4t<+/( 77??4@DGGD"'',,w"=> &" cC	N*DAK 2FP JJW&=>		&'4"'6G IIw||W__=>'6"  &"??,
 JJWo6

"*"3"3"5(0(=(=(?"*"9"9";!yy{#&88HHQK..rvvq9"=- XXab\- $ ,.99\2+F,.IImR,H$'HH,0,A,A "!" '(J/'. ZZ04

0B,,"00 RWW1::s!//*&  	  _ 8r ""$WIT"D)QGGG$$&' * 	01ell 	

DBtf+  	eoobgg!&&#&--$
  	 	eoo==7"KKJK KKH 	I @h"  &%&i 87t *)s]   1m<B&m.&D"m.1m9m.	mG	m. n m.m+'m.*m++m..
m= 
nc                    [        [        R                  5        [        S5        [        S5        [        S5        [        S5        [        [        R                  5        [        SU SU S35        [        [        R
                  5        [        S5        [        [        R                  5        U R                  R                  (       a  [        R                  " S	5        g g )
Nz;  When reporting issues, please first upgrade to the latestz>  version of Material for MkDocs, as the problem might alreadyz=  be fixed in the latest version. This helps reduce duplicatez(  efforts and saves us maintainers time.z  Please update from z to .z9  pip install --upgrade --force-reinstall mkdocs-materialr   )
rv   r   REDr   r   r   rI   archive_stop_on_violationrU   rV   )r   haveneeds      r   rS   %InfoPlugin._help_on_versions_and_exitq  s    dhhKLNOMN89ell%dV4vQ78eooIKell ;;00HHQK 1r!   c                    [        [        R                  5        [        S5        [        S5        [        S5        [        S5        [        [        R                  5        [        S5        [        S5        [        [        R
                  5        [        S5        [        S5        [        [        R                  5        [        S	5        [        S
5        [        [        R
                  5        [        S5        [        S5        [        S5        [        S5        [        [        R                  5        U R                  R                  (       a  [        R                  " S5        g g )Nz;  When reporting issues, you must remove all customizationsz;  and check if the problem persists. If not, the problem isz;  caused by your overrides. Please understand that we can'tz4  help you debug your customizations. Please remove:z  - theme.custom_dirz	  - hooksz;  Additionally, please remove all third-party JavaScript orz4  CSS not explicitly mentioned in our documentation:z  - extra_cssz  - extra_javascriptz?  If you're using customizations from the theme's documentationz?  and you want to report a bug specific to those customizationsz?  then set the 'archive_stop_on_violation: false' option in thez  info plugin config.r   )rv   r   r   r   r   YELLOWr   rI   r   rU   rV   )r   s    r   rZ   +InfoPlugin._help_on_customizations_and_exit  s    dhhKLKLKLDEell$%kdkkKLDEello$%dkkOPOPOP%&eoo ;;00HHQK 1r!   c                 
   [        [        R                  5        [        S5        [        S[        R                  " 5        S35        [        S5        [        [
        R                  5        U H  n[        SU 35        M     [        S5        [        S5        [        S5        [        S5        [        S5        [        [
        R                  5        U R                  R                  (       a  [        R                  " S	5        g g )
Nz(  The current working (root) directory:
z    r;   z)  is not a parent of the following paths:z;
  To assure that all project files are found please adjustz=  your config or file structure and put everything within thez   root directory of the project.z<
  Please also make sure `mkdocs build` is run in the actualr   )rv   r   r   r^   rj   r   r   r   rI   r   rU   rV   )r   outside_rootr_   s      r   rn   InfoPlugin._help_on_not_in_cwd  s    dhh9:RYY[M$%9:ell DD-  !LMMN01MN01eoo ;;00HHQK 1r!   abspathreturnc                 .   [        USS9nU R                   H[  n[        R                  " X25      (       d  M   [        R                  SU SU 35        U R                  R                  U SU 35          g   [        R                  R                  U5      (       a  g[        R                  R                  US5      n[        R                  R                  U5      (       a7  [        R                  SU 35        U R                  R                  S	U 35        gg)
NTreturn_pathzExcluded pattern 'z': z - Fzsitemap.xml.gzzExcluded site_dir: zsitemap.xml.gz - )rs   r   researchrQ   debugr   rl   r^   r_   isfilerq   exists)r   r   pattern_pathr   
sitemap_gzs        r   r{   InfoPlugin._is_excluded  s     (tD..Gyy//		.wis7)DE%%,,yL>-JK	 / 77>>'"" WW\\'+;<
77>>*%%II+G956!!((+<\N)KLr!   )r   r   r   )__name__
__module____qualname____firstlineno__r   r&   r   r   rS   rZ   rn   r   boolr{   __static_attributes____classcell__)r   s   @r   r   r   2   sP    #+ Cd dR	"6,C D  r!   r   c                     [         R                  nU SU-  :  a  [         R                  nOU SU-  :  a  [         R                  nS H#  n[	        U 5      S:  a  U U S SU 3s  $ U S-  n M%     g )Ni ia  )BkBMBGBTBPBEBZBg     @@z3.1fr:   )r   GREENr   r   abs)valuefactorr   units       r   r   r     sj    JJE	&	 $((%	%&.	 $++%?u:WU4L$00 @r!   r_   r.   r   c                     [         R                  R                  U 5      (       a  U $ Uc  [         R                  " 5       n[         R                  R	                  [         R                  R                  X5      5      $ N)r^   r_   isabsrj   normpathrq   )r_   r.   s     r   r\   r\     sK    	ww}}T4K		:77BGGLL:;;r!   abs_src_pathc                 p   [        U SS9 nUR                  5       nS S S 5         [        R                  " W[	        5       S9=(       d    0 nSU;   a  UR                  S5      n[        R                  R                  U 5      n[        XES9n[        R                  R                  U5      (       a[  XcS'   [        R                  SU 35        [        U5      n[        U[         5      (       a  U/UQnU$ [        U["        5      (       a  X7/nU$ ! , (       d  f       N= f! [        R
                   a    0 n Nf = f)N	utf-8-sigencoding)Loaderr0   r-   z&Loading inherited configuration file: )r   readyamlloadr   	YAMLErrorrM   r^   r_   r`   r\   r   rQ   r   rc   rd   re   dict)r   r   sourceresultr}   parent_pathr   parents           r   rc   rc     s   	lk	2d 
36O,=>D" F**Y'ggool3!'D77>>'"" '9II>wiHI(F&$'' *6* M FD)) )M+ 
3	2
 >> s   D&D 
DD54D5r   r   c                 N   [        U 5      R                  [        [        R                  " 5       5      SS5      nUR                  [        R                  S5      R                  S5      nU(       d  g[        R                  R                  U 5      (       d  US-   nU(       a  U$ SU 3$ )Nr/   r   r,   ^)rg   r   r^   rj   r   rstripr_   r   )r   r   r_   s      r   rs   rs     s|    g&&z"))+'>AFD<<$++C0D 77>>'""cz4.avJ.r!   project_config_filec                     [        U SS9 n[        U S9nUR                  U5        UR                  5         UsS S S 5        $ ! , (       d  f       g = f)Nr   r   )r]   )r   r	   	load_filevalidate)r  r   rI   s      r   rz   rz     sC    	!K	8D1DE 	 
9	8	8s   ,A
Ar9   c                     [        U SS9nUR                  S5      R                  SS5      S   nUR                  S5      (       a   U(       a  [        R                  SU  35        gg)	NTr   r,   r   r=   r   z)The following .dotpath will be included: F)rs   r  rO   rP   rQ   r   )r_   r9   
posix_pathr   s       r   r|   r|     s\    !$d;JS!((a04DsKKCD6JKr!   c                 F    U (       a  U S   R                  5       U SS  -   $ U $ )Nr   r   )upper)r_   s    r   rg   rg   +  s$    )-47==?T!"X%747r!   zmkdocs.material.info)r   r   )F)/r   rw   r   loggingr^   r   r   rL   rh   rU   r   coloramar   r   importlib.metadatar   r   ior   markdown.extensions.tocr   mkdocs.config.defaultsr	   mkdocs.pluginsr
   r   mkdocs.utilsr   zipfiler   r   rI   r   patternsr   r   r   r   r\   rc   r   rs   rz   r|   rg   	getLoggerrQ    r!   r   <module>r     s   *     	  	   
    5  + / 5 ( )  ,YJ' Y@<# <3 <# <S :/c / /S c   8S 8 ./r!   