+
    "i              	         R t ^ RIHt ^ RIt^ RIHtHt ^ RIHt ^ RI	H
u Ht ^ RIt^ RIHt ^RIHt ^RIHt ]'       d   ^ RIHt ^R	IHt ]P2                  ! ]P4                  ! R
4      R]P6                  ! R4      ]./4      ]P:                  ]P<                  R R l4       4       4       t]P2                  ! ]P4                  ! R
4      R]P6                  ! R4      ]P@                  ]P6                  ! R4      ]PB                  /4      ]P:                  ]P<                  R R l4       4       4       t"]P2                  ! ]P4                  ! R
4      R/4      ]P:                  ]P<                  R R l4       4       4       t#]P2                  ! ]P4                  ! R
4      R]P4                  ! R4      ]PB                  ]P4                  ! R4      ]PH                  /4      ]P:                  ]P<                  R R l4       4       4       t%]P2                  ! ]P4                  ! R
4      R]P4                  ! R4      ]PB                  /4      ]P:                  ]P<                  R R l4       4       4       t&R# )z!Register info websocket commands.)annotationsN)TYPE_CHECKINGAny)websocket_api)regex)DOMAIN)HacsDispatchEvent)HomeAssistant)HacsBasetypezhacs/repositories/list
categoriesc               (    V ^8  d   QhRRRRRRRR/# 	   hassr	   
connectionzwebsocket_api.ActiveConnectionmsgzdict[str, Any]returnNone )formats   "8/config/custom_components/hacs/websocket/repositories.py__annotate__r      s0     - -
-.- 
- 
	-    c                V  "   V P                   P                  \        4      pTP                  \        P
                  ! VR,          VP                  P                   Uu. uEF  pVP                   P                  VP                  RVP                  P                  4      9   g   KE  VP                  '       d   KY  VP                   P                  '       g   Kw  / RVP                   P                  bRVP                  bRVP                  bRVP                   P                   bRVP"                  bRVP                   P                  bR	VP$                  P&                  bR
VP                  P)                  \+        VP                   P,                  4      4      '       * bRVP                   P.                  bRVP                   P0                  bRVP                   P2                  bRVP                   P4                  bRVP                   P6                  bRVP                   P8                  bRVP$                  P:                  bRVP                   P,                  bRVP                   P<                  bRVP                   P>                  RVP@                  PB                  PD                  RVPF                  RVP                   PH                  RVPJ                  RVP                   PL                  RVPN                  RVPP                  RVP                   PR                  /	CNEK  	  up4      4       R# u upi 5i)zList repositories.idr   authorsavailable_versioninstalled_versionconfig_flowcan_downloadcategorycountrycustomdescriptiondomain	downloads	file_name	full_namehidehomeassistant	installedlast_updated
local_pathnamenewpending_upgradestarsstatestatustopicsN)*datagetr   send_messager   result_messagerepositorieslist_allr!   commonr    ignored_by_country_configurationlast_fetchedr   display_available_versiondisplay_installed_versionr   r    repository_manifestr"   
is_defaultstrr   r$   r%   r&   r'   r(   r)   r*   r+   r,   contentpathlocaldisplay_namer/   pending_updatestargazers_countr2   display_statusr4   )r   r   r   hacsrepos   &&&  r   hacs_repositories_listrL      s     YY]]6*D$$I< !--66;!: 7D99%%t{{?U?U)VV;< ===> II**?tyy00')G)G ()G)G "499#8#8	
 #D$5$5 		 2 2 t77?? $"3"3">">s499<<?P"QQ "499#8#8 dii..  !4!4  !4!4  !4!4 DIINN $T%=%=%K%K  $)),,!"  !4!4#$ #DII$:$: $,,"3"3"9"9D--499==%t':':TYY77TZZd11dii..58 7;!$	
&!s&   AL)AL$$L$8L$IL$L)zhacs/repositories/clear_new
repositoryc               (    V ^8  d   QhRRRRRRRR/# r   r   )r   s   "r   r   r   X   s6     E E
E.E 
E 
	Er   c                
  "   V P                   P                  \        4      pVP                  R4      ;p'       d.   VP                  P	                  V4      pRVP                   n        MVP                  P                   F  pVP                   P
                  '       g   K!  VP                   P                  VP                  R. 4      9   g   KN  VP                  P                  RVP                   P                  4       RVP                   n        K  	  VP                  \        P                  / 4       VP                   P                  4       G Rj  xL
  VP                  \         P"                  ! VR,          4      4       R#  L25i)z/Clear new repositories for specific categories.rM   Fr   zClearing new flag from '%s'Nr   )r5   r6   r   r9   	get_by_idr/   r:   r!   logdebugr(   async_dispatchr   
REPOSITORYasync_writer7   r   r8   )r   r   r   rJ   rK   rM   s   &&&   r   hacs_repositories_clear_newrV   O   s     YY]]6*Dww|$$t$&&006
#
 %%..Dyy}}}!3!3sww|R7P!P1II'' !&		 / 	)44b9
))


!!!M88TCD "s   BF(FBFF3Fzhacs/repositories/removedc               (    V ^8  d   QhRRRRRRRR/# r   r   )r   s   "r   r   r   x   s6     N N
N.N 
N 
	Nr   c                p  "   V P                   P                  \        4      p. pVP                  P                   FI  pVP
                  VP                  P                  9  g   K*  VP                  VP                  4       4       KK  	  VP                  \        P                  ! VR,          V4      4       R# 5i)z+Get information about removed repositories.r   N)r5   r6   r   r9   list_removedrM   r;   ignored_repositoriesappendto_jsonr7   r   r8   )r   r   r   rJ   rC   rK   s   &&&   r   hacs_repositories_removedr]   q   s}      YY]]6*DG!!..??$++"B"BBNN4<<>* / M88TGLMs   AB6$AB6zhacs/repositories/addr!   c               (    V ^8  d   QhRRRRRRRR/# r   r   )r   s   "r   r   r      s6     2I 2I
2I.2I 
2I 
	2Ir   c                   "   V P                   P                  \        4      p\        P                  ! VR,          4      pVR,          pVf   R# WCP
                  P                  9   d&   VP
                  P                  P                  V4       VP
                  P                  P                  V4      ;p'       d   TpWSP
                  P                  9  d   VP                  P                  RWT4       MfVP                  P                  V4      '       g    VP                  VVR7      G Rj  xL
  M(VP!                  \"        P$                  RRR	R
V R2/4       VP/                  \0        P2                  ! VR,          / 4      4       R#  L\  \         dg   pTP!                  \"        P$                  RRR\'        \(        P*                  ! 4       ^ ,          P,                  4      R	\'        T4      /4        Rp?LRp?ii ; i5i)zAdd custom repositoriy.rM   r!   Nz!%s is not a valid category for %s)repository_full_namer!   actionadd_repository	exceptionmessagezRepository 'z' exists in the store.r   )r5   r6   r   r   extract_repository_from_urlr;   skipremoverenamed_repositoriesr   rQ   errorr9   get_by_full_nameasync_register_repositoryBaseExceptionrS   r   ERRORrB   sysexc_info__name__r7   r   r8   )r   r   r   rJ   rM   r!   renamedrc   s   &&&     r   hacs_repositories_addrr      s     YY]]6*D223|3DEJ:H[[%%%
+++2266zBBwB
{{---:HQ//
;;	00%/! 1   $ 	##*\*5KL	
 M88TBGH5 
	 !''.S\\^A%6%?%?!@s9~ 
	sK   B7G>:AG>F
 +F,F
 0AG>F
 
G;AG61G>6G;;G>zhacs/repositories/removec               (    V ^8  d   QhRRRRRRRR/# r   r   )r   s   "r   r   r      s6     I I
I.I 
I 
	Ir   c                R  "   V P                   P                  \        4      pVP                  P	                  VR,          4      pVP                  4        VP                   P                  4       G Rj  xL
  VP                  \        P                  ! VR,          / 4      4       R#  L35i)zRemove custom repositoriy.rM   Nr   )
r5   r6   r   r9   rP   rg   rU   r7   r   r8   )r   r   r   rJ   rM   s   &&&  r   hacs_repositories_removeru      sz      YY]]6*D"",,S->?J
))


!!!M88TBGH "s   A/B'1B%24B')'__doc__
__future__r   rn   typingr   r   homeassistant.componentsr   'homeassistant.helpers.config_validationhelpersconfig_validationcv
voluptuousvolcustom_components.hacs.utilsr   constr   enumsr   homeassistant.corer	   baser
   websocket_commandRequiredOptionalrB   require_adminasync_responserL   ensure_liststringrV   r]   Lowerrr   ru   r   r   r   <module>r      s8   ' " 
 % 2 4 4  .  %0   V6\"SE -  -`   V;\"BNN\"BII E  E2   V9
 N  N   V5\"BIIZ #)) 2I  2Ij   V8\"BII I  Ir   