mirror of
https://github.com/RooVetGit/Roo-Code.git
synced 2026-09-05 08:10:14 +00:00
headers and i18n
This commit is contained in:
parent
99b1f9eacd
commit
60cb90230d
24 changed files with 107 additions and 30 deletions
|
|
@ -46,7 +46,6 @@
|
|||
},
|
||||
"title": "Marketplace"
|
||||
},
|
||||
"done": "Done",
|
||||
"tabs": {
|
||||
"installed": "Installed",
|
||||
"browse": "Browse",
|
||||
|
|
|
|||
|
|
@ -84,16 +84,13 @@ const HistoryView = ({ onDone }: HistoryViewProps) => {
|
|||
<TabHeader className="flex flex-col gap-2">
|
||||
<div className="flex items-center justify-between gap-2">
|
||||
<div className="flex items-center gap-2">
|
||||
<StandardTooltip content={t("history:done")}>
|
||||
<Button
|
||||
variant="ghost"
|
||||
className="px-1.5 -ml-2"
|
||||
onClick={onDone}
|
||||
aria-label={t("history:done")}>
|
||||
<ArrowLeft />
|
||||
<span className="sr-only">{t("history:done")}</span>
|
||||
</Button>
|
||||
</StandardTooltip>
|
||||
<Button
|
||||
variant="ghost"
|
||||
className="px-1.5 -ml-2"
|
||||
onClick={onDone}
|
||||
aria-label={t("settings:back")}>
|
||||
<ArrowLeft />
|
||||
</Button>
|
||||
<h3 className="text-vscode-foreground m-0">{t("history:history")}</h3>
|
||||
</div>
|
||||
<StandardTooltip
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
import { useState, useEffect, useMemo, useContext } from "react"
|
||||
import { Button } from "@/components/ui/button"
|
||||
import { StandardTooltip } from "@/components/ui"
|
||||
import { ArrowLeft } from "lucide-react"
|
||||
import { Tab, TabContent, TabHeader } from "../common/Tab"
|
||||
import { MarketplaceViewStateManager } from "./MarketplaceViewStateManager"
|
||||
|
|
@ -103,16 +102,14 @@ export function MarketplaceView({ stateManager, onDone, targetTab }: Marketplace
|
|||
<TabHeader className="flex flex-col sticky top-0 z-10 px-3 py-2">
|
||||
<div className="flex items-center justify-between gap-2 px-2">
|
||||
<div className="flex items-center gap-2">
|
||||
<StandardTooltip content={t("marketplace:done")}>
|
||||
<Button
|
||||
variant="ghost"
|
||||
className="px-1.5 -ml-2"
|
||||
onClick={() => onDone?.()}
|
||||
aria-label={t("marketplace:done")}>
|
||||
<ArrowLeft />
|
||||
<span className="sr-only">{t("marketplace:done")}</span>
|
||||
</Button>
|
||||
</StandardTooltip>
|
||||
<Button
|
||||
variant="ghost"
|
||||
className="px-1.5 -ml-2"
|
||||
onClick={() => onDone?.()}
|
||||
aria-label={t("settings:back")}>
|
||||
<ArrowLeft />
|
||||
<span className="sr-only">{t("marketplace:done")}</span>
|
||||
</Button>
|
||||
<h3 className="font-bold m-0">{t("marketplace:title")}</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -38,17 +38,17 @@ export function SettingsSearchInput({
|
|||
onKeyDown={onKeyDown}
|
||||
placeholder={t("settings:search.placeholder")}
|
||||
className={cn(
|
||||
"pl-6 w-[0px] border-none focus:border-vscode-input-border focus:pl-8 focus:min-w-[110px] focus:w-full",
|
||||
value && "pr-4 pl-8 min-w-[108px]",
|
||||
"pl-6 focus:pl-8 w-[0px] border-none focus:border-vscode-input-border focus:min-w-[90px] focus:w-full",
|
||||
value && "pl-8 pr-8 min-w-[50px] w-full",
|
||||
)}
|
||||
/>
|
||||
{value && (
|
||||
<button
|
||||
type="button"
|
||||
onClick={() => onChange("")}
|
||||
className="absolute cursor-pointer right-2.5 top-1/2 -translate-y-1/2 size-4 text-vscode-descriptionForeground hover:text-vscode-foreground focus:outline-none"
|
||||
className="absolute cursor-pointer right-2 top-1/2 -translate-y-1/2 size-4 text-vscode-descriptionForeground hover:text-vscode-foreground focus:outline-none"
|
||||
aria-label="Clear search">
|
||||
<X className="size-4" />
|
||||
<X className="size-3" />
|
||||
</button>
|
||||
)}
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -671,7 +671,7 @@ const SettingsView = forwardRef<SettingsViewRef, SettingsViewProps>(({ onDone, t
|
|||
return (
|
||||
<Tab>
|
||||
<TabHeader className="flex justify-between items-center gap-2">
|
||||
<div className="flex items-center gap-2 grow truncate">
|
||||
<div className="flex items-center gap-2 grow">
|
||||
<StandardTooltip content={t("settings:header.doneButtonTooltip")}>
|
||||
<Button variant="ghost" className="px-1.5 -ml-2" onClick={() => checkUnsaveChanges(onDone)}>
|
||||
<ArrowLeft />
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/ca/settings.json
generated
5
webview-ui/src/i18n/locales/ca/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Torna a la vista de tasques",
|
||||
"search": {
|
||||
"placeholder": "Troba un ajust...",
|
||||
"noResults": "No s'han trobat resultats per \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Desar",
|
||||
"done": "Fet",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/de/settings.json
generated
5
webview-ui/src/i18n/locales/de/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Zur Aufgabenansicht zurück",
|
||||
"search": {
|
||||
"placeholder": "Einstellung finden...",
|
||||
"noResults": "Keine Treffer für \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Speichern",
|
||||
"done": "Fertig",
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
"history": "History",
|
||||
"exitSelectionMode": "Exit Selection Mode",
|
||||
"enterSelectionMode": "Enter Selection Mode",
|
||||
"done": "Done",
|
||||
"searchPlaceholder": "Fuzzy search history...",
|
||||
"newest": "Newest",
|
||||
"oldest": "Oldest",
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
{
|
||||
"back": "Back to tasks view",
|
||||
"search": {
|
||||
"placeholder": "Find setting...",
|
||||
"noResults": "No results found for \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Save",
|
||||
"done": "Done",
|
||||
"cancel": "Cancel",
|
||||
"reset": "Reset",
|
||||
"select": "Select",
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
"title": "Settings",
|
||||
"saveButtonTooltip": "Save changes",
|
||||
"nothingChangedTooltip": "Nothing changed",
|
||||
"doneButtonTooltip": "Discard unsaved changes and close settings panel"
|
||||
"doneButtonTooltip": "Discard unsaved changes and go back to tasks view"
|
||||
},
|
||||
"unsavedChangesDialog": {
|
||||
"title": "Unsaved Changes",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/es/settings.json
generated
5
webview-ui/src/i18n/locales/es/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Volver a la vista de tareas",
|
||||
"search": {
|
||||
"placeholder": "Buscar ajuste...",
|
||||
"noResults": "No se encontraron resultados para \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Guardar",
|
||||
"done": "Hecho",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/fr/settings.json
generated
5
webview-ui/src/i18n/locales/fr/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Retour à la vue des tâches",
|
||||
"search": {
|
||||
"placeholder": "Trouver un réglage...",
|
||||
"noResults": "Aucun résultat pour \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Enregistrer",
|
||||
"done": "Terminé",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/hi/settings.json
generated
5
webview-ui/src/i18n/locales/hi/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "टास्क व्यू पर वापस जाओ",
|
||||
"search": {
|
||||
"placeholder": "सेटिंग खोजें...",
|
||||
"noResults": "\"{{query}}\" के लिए कोई परिणाम नहीं मिला"
|
||||
},
|
||||
"common": {
|
||||
"save": "सहेजें",
|
||||
"done": "पूर्ण",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/id/settings.json
generated
5
webview-ui/src/i18n/locales/id/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Kembali ke tampilan tugas",
|
||||
"search": {
|
||||
"placeholder": "Cari pengaturan...",
|
||||
"noResults": "Tidak ada hasil untuk \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Simpan",
|
||||
"done": "Selesai",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/it/settings.json
generated
5
webview-ui/src/i18n/locales/it/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Torna alla vista attività",
|
||||
"search": {
|
||||
"placeholder": "Trova impostazione...",
|
||||
"noResults": "Nessun risultato per \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Salva",
|
||||
"done": "Fatto",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/ja/settings.json
generated
5
webview-ui/src/i18n/locales/ja/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "タスクビューに戻る",
|
||||
"search": {
|
||||
"placeholder": "設定を検索...",
|
||||
"noResults": "\"{{query}}\" の結果はありません"
|
||||
},
|
||||
"common": {
|
||||
"save": "保存",
|
||||
"done": "完了",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/ko/settings.json
generated
5
webview-ui/src/i18n/locales/ko/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "작업 보기로 돌아가기",
|
||||
"search": {
|
||||
"placeholder": "설정 찾기...",
|
||||
"noResults": "\"{{query}}\"에 대한 결과가 없습니다"
|
||||
},
|
||||
"common": {
|
||||
"save": "저장",
|
||||
"done": "완료",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/nl/settings.json
generated
5
webview-ui/src/i18n/locales/nl/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Terug naar takenoverzicht",
|
||||
"search": {
|
||||
"placeholder": "Instelling zoeken...",
|
||||
"noResults": "Geen resultaten voor \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Opslaan",
|
||||
"done": "Gereed",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/pl/settings.json
generated
5
webview-ui/src/i18n/locales/pl/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Wróć do widoku zadań",
|
||||
"search": {
|
||||
"placeholder": "Znajdź ustawienie...",
|
||||
"noResults": "Brak wyników dla \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Zapisz",
|
||||
"done": "Gotowe",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/pt-BR/settings.json
generated
5
webview-ui/src/i18n/locales/pt-BR/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Voltar para a visualização de tarefas",
|
||||
"search": {
|
||||
"placeholder": "Encontrar configuração...",
|
||||
"noResults": "Nenhum resultado para \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Salvar",
|
||||
"done": "Concluído",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/ru/settings.json
generated
5
webview-ui/src/i18n/locales/ru/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Назад к списку задач",
|
||||
"search": {
|
||||
"placeholder": "Найти настройку...",
|
||||
"noResults": "Нет результатов для \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Сохранить",
|
||||
"done": "Готово",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/tr/settings.json
generated
5
webview-ui/src/i18n/locales/tr/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Görev görünümüne dön",
|
||||
"search": {
|
||||
"placeholder": "Ayar bul...",
|
||||
"noResults": "\"{{query}}\" için sonuç yok"
|
||||
},
|
||||
"common": {
|
||||
"save": "Kaydet",
|
||||
"done": "Tamamlandı",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/vi/settings.json
generated
5
webview-ui/src/i18n/locales/vi/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "Quay lại chế độ xem nhiệm vụ",
|
||||
"search": {
|
||||
"placeholder": "Tìm cài đặt...",
|
||||
"noResults": "Không tìm thấy kết quả cho \"{{query}}\""
|
||||
},
|
||||
"common": {
|
||||
"save": "Lưu",
|
||||
"done": "Hoàn thành",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/zh-CN/settings.json
generated
5
webview-ui/src/i18n/locales/zh-CN/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "返回任务视图",
|
||||
"search": {
|
||||
"placeholder": "查找设置...",
|
||||
"noResults": "未找到与 \"{{query}}\" 匹配的结果"
|
||||
},
|
||||
"common": {
|
||||
"save": "保存",
|
||||
"done": "完成",
|
||||
|
|
|
|||
5
webview-ui/src/i18n/locales/zh-TW/settings.json
generated
5
webview-ui/src/i18n/locales/zh-TW/settings.json
generated
|
|
@ -1,4 +1,9 @@
|
|||
{
|
||||
"back": "返回工作檢視",
|
||||
"search": {
|
||||
"placeholder": "搜尋設定...",
|
||||
"noResults": "沒有找到與 \"{{query}}\" 相符的結果"
|
||||
},
|
||||
"common": {
|
||||
"save": "儲存",
|
||||
"done": "完成",
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue