Files
TREK/shared/src/i18n/de/collection.ts
T
Maurice b842d74a5d feat(collections): import a whole trip's places into a list (#1903)
* feat(collections): preview which of a trip's places a list already holds

The bulk import endpoint has been there since the select-mode copy, but nothing
calls it and it only reports duplicates after the fact. A dialog needs the verdict
up front, so /:id/importable/:tripId returns the trip's places with the duplicate
check the import itself applies, plus whether any day holds the place.

* feat(collections): import a whole trip's places into a list

Two steps: pick a trip, then tick its places. Places already on the list are
greyed out and unpickable, and the ones no day holds start selected — those are
the plans a trip left behind, which is the reason to import at all. Sorted so a
mostly-saved trip reads as the two that are left rather than a wall of grey.

* feat(collections): reach the trip import from the filter row and an empty list

* i18n(collections): translate the trip import into all locales

* fix(collections): stop the label dialog's buttons wrapping mid-word

Three actions in a max-w-sm footer wrapped into two lines each. The assign
button also painted white text on the accent, which disappears on a light one.

* docs(collections): document the trip import
2026-08-12 11:54:36 +02:00

188 lines
9.2 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import type { TranslationStrings } from '../types';
const collection: TranslationStrings = {
'collections.saveNToList': '{count} in eine Liste speichern',
'collections.addedNToList': '{count} in {name} gespeichert',
'collections.noOwnLists': 'Du hast noch keine Listen',
'collections.saveToListHint': 'Duplikate werden automatisch übersprungen',
'collections.role.label': 'Rolle',
'collections.role.viewer': 'Betrachter',
'collections.role.editor': 'Bearbeiter',
'collections.role.admin': 'Admin',
'collections.picker.allLists': 'Alle Listen',
'collections.select': 'Auswählen',
'collections.selectAll': 'Alle auswählen',
'collections.deselectAll': 'Auswahl aufheben',
'collections.moveToList': 'In Liste verschieben',
'collections.duplicateToList': 'In Liste duplizieren',
'collections.moveToListTitle': '{count} in andere Liste verschieben',
'collections.duplicateToListTitle': '{count} in andere Liste duplizieren',
'collections.noOtherLists': 'Noch keine anderen Listen',
'collections.movedCount': '{count} Orte verschoben',
'collections.duplicatedCount': '{count} Orte dupliziert',
'collections.placeCount': '{count} Orte',
'collections.category': 'Kategorie',
'collections.noCategory': 'Keine Kategorie',
'collections.editListTitle': 'Liste bearbeiten',
'collections.coverImage': 'Titelbild',
'collections.addCover': 'Titelbild hinzufügen',
'collections.changeCover': 'Titelbild ändern',
'collections.description': 'Beschreibung',
'collections.descriptionPlaceholder': 'Beschreibung hinzufügen…',
'collections.links': 'Links',
'collections.linkLabel': 'Bezeichnung',
'collections.addLink': 'Link hinzufügen',
'collections.addDetails': 'Details hinzufügen',
'collections.addPlace': 'Ort hinzufügen',
'collections.addPlaceSearch': 'Nach einem Ort suchen…',
'collections.addPlaceHint': 'Suchen, um einen Ort zur Liste hinzuzufügen',
'collections.importFromTrip': 'Aus einer Reise übernehmen',
'collections.importTitle': 'Aus einer Reise übernehmen',
'collections.importDoneTitle': 'Übernahme abgeschlossen',
'collections.importPickTripHint': 'Wähle eine Reise und übernimm ihre Orte in {name}.',
'collections.importNoTrips': 'Noch keine Reisen',
'collections.importPlacesCount': '{count} Orte',
'collections.importSearchPlaces': 'Orte durchsuchen…',
'collections.importOnlyNew': 'Nur neue',
'collections.importSelectAll': 'Alle auswählen',
'collections.importClearSelection': 'Auswahl aufheben',
'collections.importAlreadySaved': 'Schon gespeichert',
'collections.importUnscheduled': 'Ohne Tag',
'collections.importOnDay': 'Tag {count}',
'collections.importSelectedCount': '{count} ausgewählt',
'collections.importAction': '{count} übernehmen',
'collections.importEmptyTrip': 'Diese Reise hat noch keine Orte',
'collections.importNothingNew': 'Alles aus dieser Reise steht schon auf der Liste',
'collections.importDone': '{count} Orte hinzugefügt',
'collections.importDoneSkipped': '{count} standen schon auf der Liste und blieben unverändert',
'collections.importDoneClean': 'Sie stehen jetzt alle in {name}',
'collections.sort.default': 'Standard',
'collections.sort.nameAsc': 'Name (A–Z)',
'collections.coordinates': 'Koordinaten',
'collections.showList': 'Liste zeigen',
'collections.expandMap': 'Karte vergrößern',
'collections.hero.mine': 'Meine Sammlung',
'collections.hero.shared': 'Mit dir geteilt',
'collections.hero.all': 'Deine Bibliothek',
'collections.title': 'Sammlungen',
'collections.subtitle': 'Deine gespeicherten Orte, in Listen organisiert',
'collections.newList': 'Neue Liste',
'collections.create': 'Erstellen',
'collections.editList': 'Umbenennen',
'collections.listMenu': 'Listenoptionen',
'collections.deleteList': 'Liste löschen',
'collections.deleteListConfirm':
'Dies löscht die Liste und alle gespeicherten Orte endgültig. Das kann nicht rückgängig gemacht werden.',
'collections.listName': 'Listenname',
'collections.listNamePlaceholder': 'z. B. Tokio 2025',
'collections.listColor': 'Farbe',
'collections.allSaved': 'Alle gespeicherten',
'collections.shared': 'Geteilt',
'collections.empty.title': 'Noch keine Orte',
'collections.empty.text': 'Speichere Orte aus jeder Reise, um diese Liste aufzubauen.',
'collections.empty.noMatchTitle': 'Keine Treffer',
'collections.empty.noMatchText': 'Keine gespeicherten Orte passen zu deinem Filter oder deiner Suche.',
'collections.empty.firstTitle': 'Starte deine erste Sammlung',
'collections.empty.firstText':
'Erstelle eine Liste, um Orte zu speichern, die du dir über Reisen hinweg merken willst.',
'collections.view.grid': 'Raster',
'collections.view.list': 'Liste',
'collections.view.map': 'Karte',
'collections.status.idea': 'Idee',
'collections.status.want': 'Will hin',
'collections.status.visited': 'Besucht',
'collections.status.filterAll': 'Alle',
'collections.status.cycleHint': 'tippen zum Ändern',
'collections.copyToTrip': 'In Reise kopieren',
'collections.copyToTripTitle': 'In Reise kopieren',
'collections.copyN': '{count} in Reise kopieren',
'collections.copyToTripSearch': 'Reisen suchen',
'collections.searchLists': 'Listen suchen',
'collections.copyToTripConfirm': 'Kopieren',
'collections.noTrips': 'Noch keine Reisen',
'collections.alreadyInTrip': 'Bereits in dieser Reise',
'collections.copied': 'In Reise kopiert',
'collections.copiedCount': '{count} Orte kopiert',
'collections.skippedDuplicates': '{count} Duplikate übersprungen',
'collections.copyNothing': 'Nichts zu kopieren',
'collections.removeFromList': 'Aus Liste entfernen',
'collections.removeFromListConfirm': 'Diesen Ort aus der Liste entfernen?',
'collections.removeFromCollection': 'Aus Sammlung entfernen',
'collections.saved': 'In {name} gespeichert',
'collections.savedUndo': 'Rückgängig',
'collections.viewInCollection': 'Ansehen',
'collections.duplicateWarning': 'Dieser Ort ist bereits in der Liste',
'collections.search': 'Orte suchen',
'collections.selectMode': 'Auswählen',
'collections.selectedCount': '{count} ausgewählt',
'collections.pickList': 'In Liste speichern',
'collections.pickListPlaceholder': 'Liste wählen',
'collections.addedToList': 'Zu {name} hinzugefügt',
'collections.removedFromList': 'Aus {name} entfernt',
'collections.inLists': 'In deinen Listen',
'collections.otherLists': 'Zu einer Liste hinzufügen',
'collections.noListsYet': 'Erstelle zuerst eine Liste, um Orte zu speichern.',
'collections.removedFromAll': 'Aus Sammlung entfernt',
'collections.picker.title': 'Gespeicherte Orte',
'collections.picker.showMore': '{count} weitere anzeigen',
'collections.picker.search': 'Gespeicherte Orte durchsuchen',
'collections.picker.empty': 'Keine gespeicherten Orte zum Hinzufügen',
'collections.picker.hint': 'Wähle einen Ort aus deinen Sammlungen',
'collections.picker.use': 'Übernehmen',
'collections.share.title': 'Liste teilen',
'collections.share.titleNamed': '„{name}“ teilen',
'collections.share.button': 'Teilen',
'collections.share.members': 'Mitglieder',
'collections.share.owner': 'Besitzer',
'collections.share.you': 'du',
'collections.share.pending': 'ausstehende Einladung',
'collections.share.accepted': 'angenommen',
'collections.share.invite': 'Jemanden einladen',
'collections.share.inviteUser': 'Benutzer wählen',
'collections.share.sendInvite': 'Einladung senden',
'collections.share.inviteHint': 'Eingeladene Personen können diese Liste ansehen und bearbeiten.',
'collections.share.noUsers': 'Keine Benutzer zum Einladen verfügbar.',
'collections.share.memberHint': 'Nur der Listenbesitzer kann Personen einladen oder entfernen.',
'collections.share.cancel': 'Abbrechen',
'collections.share.leave': 'Liste verlassen',
'collections.share.leaveConfirm':
'Diese geteilte Liste verlassen? Du verlierst den Zugriff, bis du erneut eingeladen wirst.',
'collections.share.left': 'Du hast die Liste verlassen',
'collections.share.remove': 'Entfernen',
'collections.invites.title': 'Einladungen',
'collections.invites.from': 'von',
'collections.invites.accept': 'Annehmen',
'collections.invites.decline': 'Ablehnen',
'collections.invites.received': 'Du hast eine neue Listeneinladung',
'collections.invite.sent': 'Einladung gesendet',
'collections.invite.error': 'Einladung konnte nicht gesendet werden',
'collections.invite.accepted': 'Einladung angenommen',
'collections.invite.declined': 'Einladung abgelehnt',
'collections.widget.title': 'Sammlungen',
'collections.widget.empty': 'Noch keine gespeicherten Orte',
'collections.widget.savedCount': '{count} gespeichert',
'collections.labels.title': 'Labels',
'collections.labels.manage': 'Labels verwalten',
'collections.labels.add': 'Label hinzufügen',
'collections.labels.name': 'Labelname',
'collections.labels.namePlaceholder': 'z. B. Berlin',
'collections.labels.assign': 'Label zuweisen',
'collections.labels.assignN': 'Labels zu {count} Orten hinzufügen',
'collections.labels.assignedCount': '{count} Orte gelabelt',
'collections.labels.empty': 'Noch keine Labels',
'collections.labels.emptyHint': 'Erstelle zuerst ein Label, um Orte in dieser Liste zu gruppieren.',
};
export default collection;