| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -18,10 +18,11 @@
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					################################################################################
 | 
					 | 
					 | 
					 | 
					################################################################################
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					from rich.console import Console
 | 
					 | 
					 | 
					 | 
					from rich.console import Console
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					from rich.prompt import Prompt
 | 
					 | 
					 | 
					 | 
					from rich.prompt import Confirm, Prompt, IntPrompt
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					from pyfzf import FzfPrompt
 | 
					 | 
					 | 
					 | 
					from pyfzf import FzfPrompt
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import uuid
 | 
					 | 
					 | 
					 | 
					import uuid
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					from tui_rsync.models.models import all_labels, all_labels_except
 | 
					 | 
					 | 
					 | 
					from tui_rsync.models.models import all_labels, all_labels_except
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					from tui_rsync.models.models import count_all_labels_except
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					console = Console()
 | 
					 | 
					 | 
					 | 
					console = Console()
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -46,3 +47,24 @@ class LabelPrompt:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    def get_label_except_fzf(labels = None) -> str:
 | 
					 | 
					 | 
					 | 
					    def get_label_except_fzf(labels = None) -> str:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        fzf = FzfPrompt()
 | 
					 | 
					 | 
					 | 
					        fzf = FzfPrompt()
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        return fzf.prompt(all_labels_except(labels).iterator())[0]
 | 
					 | 
					 | 
					 | 
					        return fzf.prompt(all_labels_except(labels).iterator())[0]
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    @staticmethod
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    def get_labels(labels = None) -> list:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        confirm_question = "Would you like to add a source/sources to the group?"
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        is_fzf = Confirm.ask(confirm_question, default=True)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        if not is_fzf:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					           return []
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        count_question = "How much would you like to add sources to the group?"
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        count = IntPrompt.ask(count_question, default=1)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        count_max = count_all_labels_except(labels)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        count = count_max if count > count_max else count
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        labels = []
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        for i in range(count):
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            option = LabelPrompt.get_label_except_fzf(labels)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            labels.append(option)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        return labels
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
					 | 
					 | 
					
 
 |