libs.commands.home_tab.home
libs/commands/home_tab/home.py
1""" 2libs/commands/home_tab/home.py 3""" 4 5import logging 6 7import libs.global_value as g 8from libs.commands.home_tab import ui_parts 9from libs.functions.events.handler_registry import register 10 11 12def build_main_menu(): 13 """メインメニューを生成する""" 14 g.app_var["screen"] = "MainMenu" 15 g.app_var["no"] = 0 16 g.app_var["view"] = {"type": "home", "blocks": []} 17 ui_parts.button(text="成績サマリ", action_id="summary_menu") 18 ui_parts.button(text="ランキング", action_id="ranking_menu") 19 ui_parts.button(text="個人成績", action_id="personal_menu") 20 ui_parts.button(text="直接対戦", action_id="versus_menu") 21 22 23@register 24def register_home_handlers(app): 25 """ホームタブ操作イベント""" 26 @app.action("actionId-back") 27 def handle_action(ack, body, client): 28 """戻るボタン 29 30 Args: 31 ack (_type_): ack 32 body (dict): イベント内容 33 client (slack_bolt.App.client): slack_boltオブジェクト 34 """ 35 36 ack() 37 logging.trace(body) # type: ignore 38 39 build_main_menu() 40 client.views_publish( 41 user_id=g.app_var["user_id"], 42 view=g.app_var["view"], 43 ) 44 45 @app.action("modal-open-period") 46 def handle_open_modal_button_clicks(ack, body, client): 47 """検索範囲設定選択イベント 48 49 Args: 50 ack (_type_): ack 51 body (dict): イベント内容 52 client (slack_bolt.App.client): オブジェクト 53 """ 54 55 ack() 56 client.views_open( 57 trigger_id=body["trigger_id"], 58 view=ui_parts.modalperiod_selection(), 59 )
register_home_handlers =
None
ホームタブ操作イベント