Update logo, move translations, update electron building.

This commit is contained in:
LukeGus
2025-09-10 19:18:06 -05:00
parent 9d84469ea3
commit 86671a670d
35 changed files with 2386 additions and 832 deletions

View File

@@ -2,11 +2,13 @@
import i18n from 'i18next';
import { initReactI18next } from 'react-i18next';
import LanguageDetector from 'i18next-browser-languagedetector';
import HttpApi from 'i18next-http-backend';
// Import translation files directly
import enTranslation from '../locales/en/translation.json';
import zhTranslation from '../locales/zh/translation.json';
// Initialize i18n
i18n
.use(HttpApi) // Load translations using http
.use(LanguageDetector) // Detect user language
.use(initReactI18next) // Pass i18n instance to react-i18next
.init({
@@ -23,9 +25,14 @@ i18n
checkWhitelist: true,
},
// Backend options
backend: {
loadPath: './locales/{{lng}}/translation.json',
// Resources - load translations directly
resources: {
en: {
translation: enTranslation
},
zh: {
translation: zhTranslation
}
},
interpolation: {

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,10 +1,10 @@
import React, { useState, useEffect, useRef } from 'react';
import { Button } from "@/components/ui/button";
import { Input } from "@/components/ui/input";
import { FormControl, FormItem, FormLabel } from "@/components/ui/form";
import { getCredentials } from '@/ui/main-axios';
import { Button } from "@/components/ui/button.tsx";
import { Input } from "@/components/ui/input.tsx";
import { FormControl, FormItem, FormLabel } from "@/components/ui/form.tsx";
import { getCredentials } from '@/ui/main-axios.ts';
import { useTranslation } from "react-i18next";
import type { Credential } from '../types/index.js';
import type { Credential } from '../../../../types';
interface CredentialSelectorProps {
value?: number | null;

View File

@@ -23,7 +23,7 @@ import {Alert, AlertDescription} from "@/components/ui/alert.tsx";
import {toast} from "sonner";
import {createSSHHost, updateSSHHost, getSSHHosts, getCredentials} from '@/ui/main-axios.ts';
import {useTranslation} from "react-i18next";
import {CredentialSelector} from "@/components/CredentialSelector.tsx";
import {CredentialSelector} from "@/ui/Desktop/Apps/Credentials/CredentialSelector.tsx";
interface SSHHost {
id: number;

View File

@@ -7,7 +7,7 @@ import {PasswordInput} from "@/components/ui/password-input.tsx";
import {Label} from "@/components/ui/label.tsx";
import {Alert, AlertTitle, AlertDescription} from "@/components/ui/alert.tsx";
import {useTranslation} from "react-i18next";
import {LanguageSwitcher} from "@/components/LanguageSwitcher.tsx";
import {LanguageSwitcher} from "@/ui/Desktop/User/LanguageSwitcher.tsx";
import {
registerUser,
loginUser,

View File

@@ -7,7 +7,7 @@ import {
SelectItem,
SelectTrigger,
SelectValue,
} from '@/components/ui/select';
} from '@/components/ui/select.tsx';
import { Globe } from 'lucide-react';
const languages = [

View File

@@ -13,7 +13,7 @@ import {getVersionInfo} from "@/ui/main-axios.ts";
import {toast} from "sonner";
import {PasswordReset} from "@/ui/Desktop/User/PasswordReset.tsx";
import {useTranslation} from "react-i18next";
import {LanguageSwitcher} from "@/components/LanguageSwitcher.tsx";
import {LanguageSwitcher} from "@/ui/Desktop/User/LanguageSwitcher.tsx";
import {useSidebar} from "@/components/ui/sidebar.tsx";

View File

@@ -5,7 +5,7 @@ import {Input} from "@/components/ui/input.tsx";
import {Label} from "@/components/ui/label.tsx";
import {Alert, AlertTitle, AlertDescription} from "@/components/ui/alert.tsx";
import {useTranslation} from "react-i18next";
import {LanguageSwitcher} from "@/components/LanguageSwitcher.tsx";
import {LanguageSwitcher} from "@/ui/Desktop/User/LanguageSwitcher.tsx";
import {
registerUser,
loginUser,