
    soj              
           d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZ d dlmZ d dlmZmZ d dlmZmZmZ d dlmZm Z m!Z!m"Z" d dl#m$Z$ dedej%        dededdf
dZ&dS )    N)Update)ContextTypes)phrases)dispatch_game)Game)User)
GameStatus)ReservedKeyboardKeys)Screen)GameType)Keyboard)datetime_is_afterget_remaining_duration)get_game_from_keyboard'collect_game_wagers_and_set_in_progressget_text)full_message_sendget_yes_no_keyboardfull_media_send"full_message_or_media_send_or_edit)get_belly_formattedupdatecontextinbound_keyboarduserreturnc                 6	  K   |dS t          |          }t          |j                  }t          |j                  }|                    |          rt          | ||||           d{V  dS |j        T|                    |          s$t          |t          j        |            d{V  dS t          | ||||           d{V  dS |t          j        ur$t          |t          j        |            d{V  dS |j        |j        k     rIt          |t          j                            t%          |j                            |            d{V  dS |j        r_t)          |j                  rKt          j                            t-          |j                            }t          |||            d{V  dS |                    t0          j                  st5          t6          j        t          j        |j        d          g}t          j                            |                                 |j!        "                                |#                                          }tI          ||| ||%                                           d{V  dS tL          j&        '                                |_(        tS          j*        |          +                    tR          j        |j        k    tR          j        ,                                z            -                                }	|	dk    rdS t]          | ||ddd	           d{V  t_          |t          j0        | d
           d{V  tc          |dd          }te          t          j3        t0          j4        |j        it6          j        d          gg}|j5        O|j6        7                    tI          |||j5        j8        j9        |j:        |dd|j5        |j!        g	  	                   |;                                r,|j6        7                    tI          |||d|                      tL          j&        '                                |_<        |=                                 t          | ||||d           d{V  dS )z
    Manage the game input screen
    :param update: The update
    :param context: The context
    :param inbound_keyboard: The inbound keyboard
    :param user: The user
    :return: None
    N)textr   T)screenyes_textprimary_keyno_is_delete_button)captionr   keyboardsaved_media_name)opponentr   F)r&   should_remove_bounty_challengershould_set_cooldown_challenger#should_set_global_cooldown_opponent)r   r   answer_callback)is_for_group_global)infor   is_deeplink)r#   chat_idedit_message_idr$   add_delete_buttonedit_only_caption_and_keyboard
group_chatauthorized_users)r#   r$   r1   r   )should_start_immediately)>r   r	   statusr   typeis_challengerr   r&   	is_playerr   r   GAME_GLOBAL_ALREADY_ACCEPTEDIN_PROGRESSITEM_IN_WRONG_STATUSbountywagerACTION_INSUFFICIENT_BOUNTYformatr   $game_accept_global_cooldown_end_dater   GAME_GLOBAL_COOLDOWNr   has_keyr
   CONFIRMr   r   PVT_GAME_GLOBAL_START_OPPONENTKEYBOARD_OPTION_ACCEPTid)GAME_GLOBAL_OPPONENT_CONFIRMATION_REQUESTget_description
challengerget_markdown_nameget_wager_formattedr   get_saved_media_namedatetimenowglobal_opponent_start_dater   r   whereis_nullexecuter   r   $GAME_GLOBAL_CHALLENGE_ACCEPTED_ALERTr   r   GRP_KEY_GAME_PLAYDEFAULT_PRIMARY_KEYr2   applicationcreate_taskgrouptg_group_id
message_idis_guess_basedlast_hint_opponent_datesave)
r   r   r   r   gamegame_status	game_typeot_textoutbound_keyboardclaimed_rowss
             B/app/src/chat/private/screens/screen_game_global_start_opponent.pymanagere      s      '(899D(55K"49--I $ FGT3CTJJJJJJJJJ } ~~d## 	49         
 FFGT3CTJJJJJJJJJ*0000-
 
 
 	
 	
 	
 	
 	
 	
 	

 	 {TZ03::;Ntz;Z;Z[[
 
 
 	
 	
 	
 	
 	
 	
 	

 	0 5F16 6  .55"4#LMM
 
 1
 
 
 	
 	
 	
 	
 	
 	
 	

 	 ##$8$@AA   < 7 G$(	  3
 CJJ%%''O--//$$&&
 

 &!6688
 
 
 	
 	
 	
 	
 	
 	
 	
 	 '/&7&;&;&=&=D# 	T"""	47"t}'<'<'>'>?	@	@	 
 q
1(-',,0          9	          tU===G )*>H< 	  	

/ "''-9 $*"&/3?"&/!2
 
 
	
 	
 	
  	
''*/3  	
 	
 	
 $,#4#8#8#:#:D IIKKK
/PT               )'rM   src.tg_compatr   src.tg_compat.extr   	resourcesr   *src.chat.common.screens.screen_game_manager   src.model.Gamer   src.model.Userr   src.model.enums.GameStatusr	   $src.model.enums.ReservedKeyboardKeysr
   src.model.enums.Screenr   src.model.game.GameTyper   src.model.pojo.Keyboardr   src.service.date_servicer   r   src.service.game_servicer   r   r   src.service.message_servicer   r   r   r   src.utils.string_utilsr   DEFAULT_TYPEre    rf   rd   <module>rx      s                * * * * * *       D D D D D D             1 1 1 1 1 1 E E E E E E ) ) ) ) ) ) , , , , , , , , , , , , N N N N N N N N         
            7 6 6 6 6 6qq)6qJRqZ^q	q q q q q qrf   