Organize imports: persist undo across sessions, translate UI to 23 languages

This commit is contained in:
openhands
2026-09-14 19:07:56 +02:00
parent 3a4089a5fa
commit 0f01ebf48b
24 changed files with 1717 additions and 1662 deletions
+74 -74
View File
@@ -1988,82 +1988,82 @@
"createWithItems": "Create ({count} items)"
},
"organizeImports": {
"title": "Organize imports",
"itemsBadge": "{count} items",
"loading": "Loading imported furniture…",
"empty": "No imported furniture found. Import furniture first.",
"loadError": "Could not load imports. Try again.",
"refresh": "Refresh",
"desc": "Imported furniture is grouped into suggested pages. Review each group, then create the pages you approve.",
"selectAll": "Select all",
"deselectAll": "Deselect all",
"mode": "Mode",
"modeCreate": "Create new pages",
"modeMove": "Move into an existing page",
"destination": "Destination page",
"destinationChosen": "selected",
"destinationSearchPlaceholder": "Search pages by name…",
"noDestResults": "No pages found",
"destinationHint": "All approved groups are moved into this page — no new page is created.",
"chooseDestination": "Pick a destination page first",
"move": "Move {count, plural, one {1 item} other {# items}}",
"name": "Name",
"icon": "Icon",
"layout": "Layout",
"resetSuggestion": "Suggested",
"suggestedLayout": "Suggested: {layout}",
"movedLabel": "{count} moved",
"newLabel": "{count} new",
"isNew": "new",
"price": "Price",
"free": "Free",
"setPrice": "Set a price",
"credits": "Credits",
"points": "Points",
"pointsType": "Type",
"newPriceHint": "Applies to new offers only; moved offers keep their current price.",
"parent": "Place pages under",
"root": "Catalog root",
"importedRoot": "Imported Furniture",
"cancel": "Cancel",
"create": "Create {count, plural, one {1 page} other {# pages}}",
"batchLayout": "Set layout for all",
"batchPrefix": "Add prefix to all titles",
"applyBatch": "Apply to all",
"searchGroups": "Filter import groups...",
"visualPreview": "Preview",
"resetAll": "Reset overrides",
"onlyUnplaced": "Only show unplaced items",
"errorMaxItems": "Max 500 items per run. Reduce selection.",
"errorMaxGroups": "Max {count} groups per run. Reduce selection.",
"errorNoName": "Every approved page needs a name",
"tipMove": "Tip: Pick a destination page below to move furniture.",
"tipCreate": "Tip: Pick this mode to create new pages.",
"limitHint": "Max 500 items and 50 groups per run.",
"errorFailed": "Failed to organize imports",
"successMove": "Moved {moved} offer{moved, plural, one {} other {s}}{added, plural, =0 {} other {, added {added} new}} to \"{destination}\"",
"successCreate": "Created {count, plural, one {1 page} other {# pages}} with {moved} moved and {added} added furniture",
"batchLabel": "Batch:",
"title": "Организиране на импорти",
"itemsBadge": "{count} елемента",
"loading": "Зареждане на импортирани мебели…",
"empty": "Не са открити импортирани мебели. Първо импортирай мебели.",
"loadError": "Импортите не можаха да се заредят. Опитай отново.",
"refresh": "Опресни",
"desc": "Импортираните мебели са групирани в предложени страници. Прегледай всяка група и след това създай страниците, които одобряваш.",
"selectAll": "Избери всички",
"deselectAll": "Премахни избора",
"mode": "Режим",
"modeCreate": "Създай нови страници",
"modeMove": "Премести в съществуваща страница",
"destination": "Целева страница",
"destinationChosen": "избрана",
"destinationSearchPlaceholder": "Търсене на страници по име…",
"noDestResults": "Не са намерени страници",
"destinationHint": "Всички одобрени групи се преместват в тази страница — не се създава нова страница.",
"chooseDestination": "Първо избери целева страница",
"move": "{count, plural, one {Премести 1 елемент} other {Премести # елемента}}",
"name": "Име",
"icon": "Икона",
"layout": "Оформление",
"resetSuggestion": "Предложено",
"suggestedLayout": "Предложено: {layout}",
"movedLabel": "{count} преместени",
"newLabel": "{count} нови",
"isNew": "нов",
"price": "Цена",
"free": "Безплатно",
"setPrice": "Задай цена",
"credits": "Кредити",
"points": "Точки",
"pointsType": "Тип",
"newPriceHint": "Важи само за нови оферти; преместените оферти запазват текущата си цена.",
"parent": "Показване на страниците под",
"root": "Корен на каталога",
"importedRoot": "Импортирани мебели",
"cancel": "Отказ",
"create": "{count, plural, one {Създай 1 страница} other {Създай # страници}}",
"batchLayout": "Задай оформление за всички",
"batchPrefix": "Добави префикс към всички заглавия",
"applyBatch": "Приложи към всички",
"searchGroups": "Филтриране на групите за импорт...",
"visualPreview": "Преглед",
"resetAll": "Нулиране на промените",
"onlyUnplaced": "Покажи само непоставените елементи",
"errorMaxItems": "Макс. 500 елемента на изпълнение. Намали избора.",
"errorMaxGroups": "Макс. {count} групи на изпълнение. Намали избора.",
"errorNoName": "Всяка одобрена страница трябва да има име",
"tipMove": "Съвет: избери целева страница по-долу, за да преместиш мебели.",
"tipCreate": "Съвет: избери този режим, за да създадеш нови страници.",
"limitHint": "Макс. 500 елемента и 50 групи на изпълнение.",
"errorFailed": "Импортите не можаха да бъдат организирани",
"successMove": "{moved, plural, one {1 оферта преместена} other {# оферти преместени}} в \"{destination}\"{added, plural, =0 {} other {, {added} нови добавени}}",
"successCreate": "Създадени {count, plural, one {1 страница} other {# страници}} с {moved} преместени и {added} нови мебели",
"batchLabel": "Партида:",
"layoutFallbackDefault3x3": "3x3",
"itemsUnit": "items",
"itemsUnit": "елемента",
"impPrefix": "Imp ",
"isMoved": "moved",
"showAll": "Show all ({count})",
"showLess": "Show less",
"moveItemTo": "Move to…",
"batchMoveTo": "Move selected to…",
"selectedCount": "{count} selected",
"clearSelection": "Clear selection",
"undo": "Undo",
"daysLabel": "Days",
"daysValue": "{days} days",
"dupeSummary": "Already in the destination page: {count} item{count, plural, one {} other {s}}",
"layoutPreview": "Layout preview",
"emptyCategory": "No items in this category",
"dupeOnDest": "Already present on the destination page",
"dupeOnDestShort": "duplicate",
"errorPartial": "{failed} of {total} runs failed. Review and retry.",
"successCreateRuns": "Created {count, plural, one {1 page} other {# pages}} in {runs, plural, one {1 run} other {# runs}} with {moved} moved and {added} added furniture"
"isMoved": "преместен",
"showAll": "Покажи всички ({count})",
"showLess": "Покажи по-малко",
"moveItemTo": "Премести в…",
"batchMoveTo": "Премести избраните в…",
"selectedCount": "{count} избрани",
"clearSelection": "Изчисти избора",
"undo": "Отмяна",
"daysLabel": "Дни",
"daysValue": "{days} дни",
"dupeSummary": "Вече в целевата страница: {count, plural, one {1 елемент} other {# елемента}}",
"layoutPreview": "Преглед на оформлението",
"emptyCategory": "Няма елементи в тази категория",
"dupeOnDest": "Вече присъства в целевата страница",
"dupeOnDestShort": "дубликат",
"errorPartial": "{failed} от {total} изпълнения се провалиха. Прегледай и опитай отново.",
"successCreateRuns": "Създадени {count, plural, one {1 страница} other {# страници}} в {runs, plural, one {1 изпълнение} other {# изпълнения}} с {moved} преместени и {added} нови мебели"
}
},
"discovery": {