From 4463f26bb2c5761b2abc3bf388b7d5d0df6f3096 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 27 Sep 2025 08:01:23 +0200 Subject: [PATCH] i18n 1/2 --- .../gui/tauri-app/src/components/Header.tsx | 5 +- .../tauri-app/src/components/ImageWizard.tsx | 1 + .../tauri-app/src/components/PromptForm.tsx | 15 +- .../gui/tauri-app/src/components/Settings.tsx | 27 +- .../src/components/TemplateManager.tsx | 7 +- packages/kbot/gui/tauri-app/src/i18n/en.json | 396 +----------------- 6 files changed, 50 insertions(+), 401 deletions(-) diff --git a/packages/kbot/gui/tauri-app/src/components/Header.tsx b/packages/kbot/gui/tauri-app/src/components/Header.tsx index 91eac115..f0752c94 100644 --- a/packages/kbot/gui/tauri-app/src/components/Header.tsx +++ b/packages/kbot/gui/tauri-app/src/components/Header.tsx @@ -1,5 +1,6 @@ import React from 'react'; import { useNavigate } from 'react-router-dom'; +import { T } from '../i18n'; interface HeaderProps { showDebugPanel: boolean; @@ -20,8 +21,8 @@ const Header: React.FC = ({ {/* Title on its own row */}

- Image - Wizard + Image + Wizard

diff --git a/packages/kbot/gui/tauri-app/src/components/ImageWizard.tsx b/packages/kbot/gui/tauri-app/src/components/ImageWizard.tsx index d2a2d92a..7816c9ac 100644 --- a/packages/kbot/gui/tauri-app/src/components/ImageWizard.tsx +++ b/packages/kbot/gui/tauri-app/src/components/ImageWizard.tsx @@ -8,6 +8,7 @@ import log from "../lib/log"; import Header from "./Header"; import PromptForm from "./PromptForm"; import DebugPanel from "./DebugPanel"; +import { T } from "../i18n"; function arrayBufferToBase64(buffer: number[]) { let binary = ''; diff --git a/packages/kbot/gui/tauri-app/src/components/PromptForm.tsx b/packages/kbot/gui/tauri-app/src/components/PromptForm.tsx index 0ae27eb8..9d520923 100644 --- a/packages/kbot/gui/tauri-app/src/components/PromptForm.tsx +++ b/packages/kbot/gui/tauri-app/src/components/PromptForm.tsx @@ -7,6 +7,7 @@ import TemplateManager from './TemplateManager'; import { tauriApi } from '../lib/tauriApi'; import log from '../lib/log'; import { Eraser, Sparkles, Crop, Palette, Package, FolderOpen, Plus, History, ChevronUp, ChevronDown } from 'lucide-react'; +import { T } from '../i18n'; function arrayBufferToBase64(buffer: number[]) { let binary = ''; @@ -258,10 +259,10 @@ const PromptForm: React.FC = ({ - Generating... + Generating... ) : ( - '🎨 Generate Image' + <>🎨 Generate Image )} @@ -291,7 +292,7 @@ const PromptForm: React.FC = ({ {/* Quick Styles - Compact */}
-

Styles

+

Styles

{quickStyles.map((style) => (
@@ -390,7 +391,7 @@ const PromptForm: React.FC = ({ className="w-full glass-button font-semibold py-4 px-6 rounded-xl hover:border-slate-400/60 dark:hover-border-slate-500/60 flex items-center justify-center gap-2 border-2 border-dashed border-slate-300 dark:border-slate-600 hover:border-indigo-400 dark:hover:border-indigo-500 transition-colors" > - Select Images (or Drop Here) + Select Images (or Drop Here)
-

Settings

+

Settings

@@ -71,7 +72,7 @@ const Settings: React.FC = ({
= ({
- {localApiKey ? 'API key configured' : 'API key required for image generation'} + {localApiKey ? API key configured : API key required for image generation}

- Get your API key from{' '} + Get your API key from{' '} - Google AI Studio + Google AI Studio

@@ -107,8 +108,8 @@ const Settings: React.FC = ({
-

Theme

-

Choose your preferred color scheme

+

Theme

+

Choose your preferred color scheme

+
diff --git a/packages/kbot/gui/tauri-app/src/components/TemplateManager.tsx b/packages/kbot/gui/tauri-app/src/components/TemplateManager.tsx index 4321d686..06a9542d 100644 --- a/packages/kbot/gui/tauri-app/src/components/TemplateManager.tsx +++ b/packages/kbot/gui/tauri-app/src/components/TemplateManager.tsx @@ -1,6 +1,7 @@ import React from 'react'; import { PromptTemplate } from '../types'; import { Save, Download, Upload } from 'lucide-react'; +import { T } from '../i18n'; interface TemplateManagerProps { prompts: PromptTemplate[]; @@ -33,10 +34,10 @@ const TemplateManager: React.FC = ({
{/* Left: Template Picker */}
-

Templates

+

Templates

{prompts.length === 0 ? ( - No templates saved yet + No templates saved yet ) : ( prompts.map((template) => (