cleanup
This commit is contained in:
32
FileBrowserSelect.py
Normal file
32
FileBrowserSelect.py
Normal file
@@ -0,0 +1,32 @@
|
||||
from discord.ui import *
|
||||
import discord
|
||||
from typing import *
|
||||
from main import show_file_diff
|
||||
|
||||
class FileBrowserSelect(Select):
|
||||
"""Dropdown for browsing files in a commit"""
|
||||
def __init__(self, files: List[Dict], commit_sha: str):
|
||||
options = [
|
||||
discord.SelectOption(
|
||||
label=f"{f['filename'][:45]}",
|
||||
value=str(i),
|
||||
description=f"+{f.get('additions', 0)}/-{f.get('deletions', 0)} - {f.get('status', 'modified')}"
|
||||
)
|
||||
for i, f in enumerate(files[:25])
|
||||
]
|
||||
super().__init__(
|
||||
placeholder="📄 Select a file to view diff...",
|
||||
min_values=1,
|
||||
max_values=1,
|
||||
options=options
|
||||
)
|
||||
self.files = files
|
||||
self.commit_sha = commit_sha
|
||||
|
||||
async def callback(self, interaction: discord.Interaction):
|
||||
selected_idx = int(self.values[0])
|
||||
file_info = self.files[selected_idx]
|
||||
filename = file_info['filename']
|
||||
|
||||
await show_file_diff(interaction, self.commit_sha, filename)
|
||||
|
||||
Reference in New Issue
Block a user