fixed localization and made minor bug fixes

This commit is contained in:
coolcoala
2025-07-11 21:13:05 +03:00
parent e1968891ac
commit 41f32231f0
8 changed files with 29 additions and 31 deletions

View File

@@ -335,7 +335,7 @@ pub fn create_window(is_show: bool) -> bool {
"main", /* the unique window label */ "main", /* the unique window label */
tauri::WebviewUrl::App("index.html".into()), tauri::WebviewUrl::App("index.html".into()),
) )
.title("Clash Verge") .title("Clash Verge Rev Lite")
.center() .center()
.decorations(true) .decorations(true)
.fullscreen(false) .fullscreen(false)

View File

@@ -248,9 +248,9 @@ export const ProxySelectors: React.FC = () => {
</span> </span>
</TooltipTrigger> </TooltipTrigger>
<TooltipContent> <TooltipContent>
{sortType === 'default' && <p>{t("Default")}</p>} {sortType === 'default' && <p>{t("Sort by default")}</p>}
{sortType === 'delay' && <p>{t("sort by ping")}</p>} {sortType === 'delay' && <p>{t("Sort by delay")}</p>}
{sortType === 'name' && <p>{t("sort by name")}</p>} {sortType === 'name' && <p>{t("Sort by name")}</p>}
</TooltipContent> </TooltipContent>
</Tooltip> </Tooltip>

View File

@@ -75,7 +75,7 @@ const LetterItem = memo(
<Tooltip> <Tooltip>
<TooltipTrigger asChild> <TooltipTrigger asChild>
<div <div
className="flex items-center justify-center w-6 h-6 text-xs rounded-md cursor-pointer text-muted-foreground transition-transform hover:bg-accent hover:text-accent-foreground hover:scale-125" className="flex items-center justify-center w-6 h-6 text-xs rounded-md border shadow-sm cursor-pointer text-muted-foreground transition-transform hover:bg-accent hover:text-accent-foreground hover:scale-125"
onClick={() => onClick(name)} onClick={() => onClick(name)}
> >
{getFirstChar(name)} {getFirstChar(name)}
@@ -240,7 +240,6 @@ export const ProxyGroups = memo((props: Props) => {
error, error,
); );
} }
onProxies();
}); });
const handleLocation = (group: IProxyGroupItem) => { const handleLocation = (group: IProxyGroupItem) => {

View File

@@ -130,7 +130,6 @@ export const ProxyHead = (props: Props) => {
</TooltipContent> </TooltipContent>
</Tooltip> </Tooltip>
{/* --- НАЧАЛО ИЗМЕНЕНИЙ --- */}
<Tooltip> <Tooltip>
<TooltipTrigger asChild> <TooltipTrigger asChild>
<Button <Button
@@ -139,7 +138,6 @@ export const ProxyHead = (props: Props) => {
onClick={() => onHeadState({ showType: !showType })} onClick={() => onHeadState({ showType: !showType })}
className="h-8 w-8" className="h-8 w-8"
> >
{/* Теперь цвет иконки меняется в зависимости от состояния showType */}
<Eye className={cn("h-5 w-5", showType && "text-primary")} /> <Eye className={cn("h-5 w-5", showType && "text-primary")} />
</Button> </Button>
</TooltipTrigger> </TooltipTrigger>
@@ -147,7 +145,6 @@ export const ProxyHead = (props: Props) => {
<p>{showType ? t("Show Basic Info") : t("Show Detailed Info")}</p> <p>{showType ? t("Show Basic Info") : t("Show Detailed Info")}</p>
</TooltipContent> </TooltipContent>
</Tooltip> </Tooltip>
{/* --- КОНЕЦ ИЗМЕНЕНИЙ --- */}
</div> </div>
<div className="flex items-center gap-1"> <div className="flex items-center gap-1">

View File

@@ -60,8 +60,6 @@ export const ProxyItemMini = (props: Props) => {
}; };
return ( return (
// --- НАЧАЛО ИЗМЕНЕНИЙ ---
// Увеличиваем высоту (h-16) и внутренние отступы (p-3)
<div <div
data-selected={selected} data-selected={selected}
onClick={handleItemClick} onClick={handleItemClick}
@@ -78,19 +76,13 @@ export const ProxyItemMini = (props: Props) => {
{proxy.now} {proxy.now}
</span> </span>
)} )}
{!!proxy.provider && ( {!!proxy.provider && (<Badge variant="outline" className="flex-shrink-0">{proxy.provider}</Badge>)}
<Badge variant="outline" className="flex-shrink-0"> <Badge variant="outline" className="flex-shrink-0">{proxy.type}</Badge>
{proxy.provider} {proxy.udp && (<Badge variant="outline" className="flex-shrink-0">UDP</Badge>)}
</Badge> {proxy.xudp && <Badge variant="outline" className="flex-shrink-0">XUDP</Badge>}
)} {proxy.tfo && <Badge variant="outline" className="flex-shrink-0">TFO</Badge>}
<Badge variant="outline" className="flex-shrink-0"> {proxy.mptcp && <Badge variant="outline" className="flex-shrink-0">MPTCP</Badge>}
{proxy.type} {proxy.smux && <Badge variant="outline" className="flex-shrink-0">SMUX</Badge>}
</Badge>
{proxy.udp && (
<Badge variant="outline" className="flex-shrink-0">
UDP
</Badge>
)}
</div> </div>
)} )}
</div> </div>

View File

@@ -110,7 +110,7 @@ export const ProxyItem = (props: Props) => {
onClick={handleDelayClick} onClick={handleDelayClick}
className={`font-medium ${getDelayColorClass(delay)} ${!proxy.provider ? "hover:opacity-70" : "cursor-default"}`} className={`font-medium ${getDelayColorClass(delay)} ${!proxy.provider ? "hover:opacity-70" : "cursor-default"}`}
> >
{delayManager.formatDelay(delay, timeout)} ms {delayManager.formatDelay(delay, timeout)}
</div> </div>
) : ( ) : (
// Состояние по умолчанию (до проверки) // Состояние по умолчанию (до проверки)

View File

@@ -645,7 +645,10 @@
"Add New Profile": "Add New Profile", "Add New Profile": "Add New Profile",
"Delete Profile": "Delete Profile {{name}}?", "Delete Profile": "Delete Profile {{name}}?",
"This action cannot be undone.": "This action cannot be undone.", "This action cannot be undone.": "This action cannot be undone.",
"Default": "Default", "Check Group Latency": "Check Group Latency",
"sort by ping": "Sort by ping", "Locate Current Proxy": "Locate Current Proxy",
"sort by name": "Sort by name" "Show Basic Info": "Show Basic Info",
"Show Detailed Info": "Show Detailed Info",
"Set Latency Test URL": "Set Latency Test URL",
"Filter by Name": "Filter by Name"
} }

View File

@@ -595,7 +595,14 @@
"Delete Profile": "Удалить профиль {{name}}?", "Delete Profile": "Удалить профиль {{name}}?",
"This action cannot be undone.": "Это действие не может быть отменено", "This action cannot be undone.": "Это действие не может быть отменено",
"Update via proxy": "Обновить через прокси", "Update via proxy": "Обновить через прокси",
"Default": "По умолчанию", "Check Group Latency": "Проверка задержки в группе",
"sort by ping": "Сортировка по пингу", "Locate Current Proxy": "Найти текущий прокси",
"sort by name": "Сортировка по имени" "Show Basic Info": "Показать основную информацию",
"Show Detailed Info": "Показать подробную информацию",
"Update failed, retrying with Clash proxy...": "Обновление не удалось, пробую повторно с помощью прокси Clash...",
"Update failed even with Clash proxy": "Обновление не удалось даже с помощью прокси Clash",
"Update with Clash proxy successfully": "Обновление с помощью прокси Clash прошло успешно",
"Proxy Count": "Число прокси",
"Set Latency Test URL": "Установить URL-адрес тестирования задержки",
"Filter by Name": "Фильтр по имени"
} }