feat: add password confirmation to register + fix i18n hardcoded strings

- Add confirmPassword field to registration form with Zod validation
- Replace ~30 hardcoded French/English strings in admin-settings-form
  with proper t() i18n calls (Ollama models, Custom models, search test)
- Extract SettingsHeader to client component for i18n support
- Add 15 i18n keys to all 15 locale files (auth + admin.ai + admin.tools)
- Remove debug "Config value" line from embeddings section

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-04-26 19:59:38 +02:00
parent bbaae76103
commit e358171c45
20 changed files with 385 additions and 114 deletions

View File

@@ -71,7 +71,17 @@
"providerCustomOption": "🔧 Custom OpenAI-Compatible",
"saved": "(保存済み)",
"chatProvider": "チャットプロバイダー",
"chatDescription": "チャットアシスタント用のAIプロバイダー。未設定の場合はタグプロバイダーにフォールバックします。"
"chatDescription": "チャットアシスタント用のAIプロバイダー。未設定の場合はタグプロバイダーにフォールバックします。",
"fetchModelsFailed": "モデルの取得に失敗しました",
"refreshModels": "モデルを更新",
"configured": "設定済み",
"fetchingModels": "モデルを取得中...",
"clickToLoadModels": "↺ をクリックしてモデルを読み込む",
"searchModel": "モデルを検索...",
"noModels": "モデルなし。↺ をクリック",
"modelsAvailable": "{count} 件のモデルが利用可能",
"enterUrlToLoad": "URLを入力して↺をクリック",
"currentProvider": "(現在: {provider})"
},
"aiTest": {
"description": "タグ生成とセマンティック検索埋め込みのAIプロバイダーをテストします",
@@ -217,8 +227,11 @@
"jinaKeyDescription": "ウェブスクレイピングに使用されます。キーなしでも動作しますが、レート制限があります。",
"saveSettings": "ツール設定を保存",
"updateSuccess": "ツール設定が正常に更新されました",
"updateFailed": "ツール設定の更新に失敗しました"
}
"updateFailed": "ツール設定の更新に失敗しました",
"testing": "テスト中...",
"testSearch": "ウェブ検索をテスト"
},
"settingsDescription": "アプリケーション設定を構成"
},
"ai": {
"analyzing": "AI分析中...",
@@ -368,7 +381,9 @@
"signIn": "ログイン",
"signInToAccount": "アカウントにログイン",
"signOut": "ログアウト",
"signUp": "新規登録"
"signUp": "新規登録",
"confirmPassword": "パスワードの確認",
"confirmPasswordPlaceholder": "パスワードを再入力"
},
"autoLabels": {
"analyzing": "ノートを分析中...",