Organize imports: persist undo across sessions, translate UI to 23 languages
CI / check (push) Failing after 5m7s
CI / preflight (push) Skipped
CI / deploy (push) Skipped
CI / publish-container (push) Skipped

This commit is contained in:
openhands committed 2026-09-14 19:07:56 +02:00
1 parent 3a4089a5fa
commit 0f01ebf48b
24 files changed
+1717 -1662

No files matched your search

+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": "Porządkuj importy",
"itemsBadge": "{count} elementów",
"loading": "Wczytywanie zaimportowanych mebli…",
"empty": "Nie znaleziono zaimportowanych mebli. Najpierw zaimportuj meble.",
"loadError": "Nie można wczytać importów. Spróbuj ponownie.",
"refresh": "Odśwież",
"desc": "Zaimportowane meble są grupowane w sugerowane strony. Przejrzyj każdą grupę, a następnie utwórz strony, które zatwierdzisz.",
"selectAll": "Zaznacz wszystko",
"deselectAll": "Odznacz wszystko",
"mode": "Tryb",
"modeCreate": "Utwórz nowe strony",
"modeMove": "Przenieś do istniejącej strony",
"destination": "Strona docelowa",
"destinationChosen": "wybrano",
"destinationSearchPlaceholder": "Szukaj stron po nazwie…",
"noDestResults": "Nie znaleziono stron",
"destinationHint": "Wszystkie zatwierdzone grupy są przenoszone do tej strony — nie jest tworzona żadna nowa strona.",
"chooseDestination": "Najpierw wybierz stronę docelową",
"move": "{count, plural, one {Przenieś 1 element} few {Przenieś # elementy} other {Przenieś # elementów}}",
"name": "Nazwa",
"icon": "Ikona",
"layout": "Układ",
"resetSuggestion": "Sugerowane",
"suggestedLayout": "Sugerowane: {layout}",
"movedLabel": "{count} przeniesionych",
"newLabel": "{count} nowych",
"isNew": "nowy",
"price": "Cena",
"free": "Za darmo",
"setPrice": "Ustaw cenę",
"credits": "Kredyty",
"points": "Punkty",
"pointsType": "Typ",
"newPriceHint": "Dotyczy tylko nowych ofert; przeniesione oferty zachowują obecną cenę.",
"parent": "Umieść strony pod",
"root": "Katalog główny",
"importedRoot": "Zaimportowane meble",
"cancel": "Anuluj",
"create": "{count, plural, one {Utwórz 1 stronę} few {Utwórz # strony} other {Utwórz # stron}}",
"batchLayout": "Ustaw układ dla wszystkich",
"batchPrefix": "Dodaj prefiks do wszystkich tytułów",
"applyBatch": "Zastosuj do wszystkich",
"searchGroups": "Filtruj grupy importu...",
"visualPreview": "Podgląd",
"resetAll": "Przywróć zmiany",
"onlyUnplaced": "Pokaż tylko nieumieszczone elementy",
"errorMaxItems": "Maks. 500 elementów na przebieg. Zmniejsz wybór.",
"errorMaxGroups": "Maks. {count} grup na przebieg. Zmniejsz wybór.",
"errorNoName": "Każda zatwierdzona strona musi mieć nazwę",
"tipMove": "Wskazówka: wybierz poniżej stronę docelową, aby przenieść meble.",
"tipCreate": "Wskazówka: wybierz ten tryb, aby utworzyć nowe strony.",
"limitHint": "Maks. 500 elementów i 50 grup na przebieg.",
"errorFailed": "Nie udało się uporządkować importów",
"successMove": "Przeniesiono {moved, plural, one {1 ofertę} few {# oferty} many {# ofert} other {# ofert}} na \"{destination}\"{added, plural, =0 {} other {, {added} nowych dodano}}",
"successCreate": "Utworzono {count, plural, one {1 stronę} few {# strony} other {# stron}} z {moved} przeniesionymi i {added} nowymi meblami",
"batchLabel": "Partia:",
"layoutFallbackDefault3x3": "3x3",
"itemsUnit": "items",
"itemsUnit": "elementów",
"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": "przeniesiono",
"showAll": "Pokaż wszystko ({count})",
"showLess": "Pokaż mniej",
"moveItemTo": "Przenieś do…",
"batchMoveTo": "Przenieś zaznaczone do…",
"selectedCount": "{count} zaznaczonych",
"clearSelection": "Wyczyść zaznaczenie",
"undo": "Cofnij",
"daysLabel": "Dni",
"daysValue": "{days} dni",
"dupeSummary": "Już na stronie docelowej: {count, plural, one {1 element} few {# elementy} other {# elementów}}",
"layoutPreview": "Podgląd układu",
"emptyCategory": "Brak elementów w tej kategorii",
"dupeOnDest": "Już obecny na stronie docelowej",
"dupeOnDestShort": "duplikat",
"errorPartial": "{failed} z {total} przebiegów nie powiodło się. Sprawdź i spróbuj ponownie.",
"successCreateRuns": "Utworzono {count, plural, one {1 stronę} few {# strony} other {# stron}} w {runs, plural, one {1 przebiegu} few {# przebiegach} other {# przebiegach}} z {moved} przeniesionymi i {added} nowymi meblami"
}
},
"discovery": {