
    7j#                        d dl Z d dlmZ d dlmZ d dlmZ ddgZg dZ ej                  dd	d
d       ej                  dd	d
d       ej                  ddd
d       ej                  d      d                             Zy)    N)Path)cli)
submoduleszlib/ugfxz lib/chibios-contrib/ext/mcux-sdk)zlib/arm_atsamzlib/fnvzlib/lib8tionz
lib/pythonzlib/usbhostz--checkT
store_truezECheck if the submodules are dirty, and display a warning if they are.)arg_onlyactionhelpz--syncz%Shallow clone any missing submodules.z-fz--forcez%Flag to remove unexpected directories)r   r	   zGit Submodule actions.c           	      H   | j                   j                  r2t        d t        j                         j                         D              S | j                   j                  r_ | j                  g d       t        j                         j                         D ]%  \  }}|d    | j                  ddddd	|gd
       ' yt        }| j                  j                  j                  rHt        d      j                         D ],  t        fdt         D              r|j#                         . t%        t        |      D ]7  }|j'                         st)        d| d       t+        j,                  |       9  | j                  g dd
        | j                  g dd
       y)zGit Submodule actions
    c              3   &   K   | ]	  }|d      yw)statusN ).0items     N/home/hanthebot/chat/keyboard/qmk_firmware/lib/python/qmk/cli/git/submodule.py	<genexpr>z git_submodule.<locals>.<genexpr>   s     Kd4>Ks   )git	submodulesync--recursiver   Nr   r   updatez
--depth=50--initF)capture_outputTlibc              3   B   K   | ]  }|j                         v   y w)N)as_posix)r   ignorepaths     r   r   z git_submodule.<locals>.<genexpr>,   s     KVv0Ks   z
Removing '')r   r   r   r   r   z
--progress)argscheckallr   r   valuesr   runitemsREMOVE_DIRSconfiggit_submoduleforcer   iterdiranyIGNORE_DIRSappendmapis_dirprintshutilrmtree)r   namer   remove_dirsfolderr   s        @r   r'   r'      sV    xx~~Kj.?.?.A.H.H.JKKK
xx}};<$++-335 	lJD$H~%X|XtTejk	l  K
zz%%K'') 	)DK{KK""4(	) dK( "==?Jvha()MM&!"
 CGG7NCGGQbgh    )r0   pathlibr   milcr   qmkr   r%   r+   argument
subcommandr'   r   r5   r   <module>r;      s        &
 i$|  CJ  KhlAhidIl9`a()i * b j Kir5   