Skip to content

Commit 424123b

Browse files
committed
feat(i18n): translations for new privacy, parking, review, and storage features
Add EN/DE translation entries used by this branch's preceding commits. Grouped here as one commit so the locale files stay easy to diff; the keys were referenced earlier and are unblocked by this change. Mapillary viewer load gate (`streetView`) `mapillaryNoticeTitle`, `mapillaryNoticeBody`, `mapillaryNoticeData`, `mapillaryPrivacyLink`, `loadMapillaryViewer`. OAuth direct-redirect disclosure (`auth`) `oauthDirectDisclosure`. External media gate for embed sections (`dataSources`) `externalMediaTitle`, `externalMediaBody`, `loadExternalMedia`. Optional recent-map-data cache (`settings`) `storageDescription` rephrased to mention the optional cache, `preferences`, `recentMapDataCache`, `rememberRecentMapData`, `rememberRecentMapDataDescription`, `clearRecentMapData`, `clearRecentMapDataDescription`. Review-link kind/source labels (`place`) `openReviewPlatform`, `searchReviewPlatform`, `openExternalReference`. Parking source / freshness / quality / tariffs (`dataSources`) Filter chips: `filterPaid`, `filterSpacesAvailable`, `filterIncludeFull`, `filterDisabledParking`. Sections: `sectionDataQuality`, `sectionSource`. Rows: `rowDataFreshness`, `rowSource`, `rowSourceId`, `rowLicense`. Duration / tariff: `durationMinutes`, `durationHours`, `durationDays`, `tariffMaxDayPrice`, `tariffMonthly`, `tariffMonthlyResident`, `tariffMonthlyPass`, `tariffYearlyPass`. Status / availability: `stale`, `summaryAvailabilityStale`, `summaryClosed`, `summaryFull`, `summaryFreeCapacity`, `summaryFreeSpaces`, `summarySpaces`, `qualityRealtimeAvailabilityStale`, `qualityFreeSpacesClampedToCapacity`, `qualityNegativeFreeSpacesClamped`, `evChargingAvailable`.
1 parent 98f522d commit 424123b

2 files changed

Lines changed: 98 additions & 4 deletions

File tree

packages/i18n/locales/de.json

Lines changed: 49 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,9 @@
271271
"copyWebsite": "Website kopieren",
272272
"wikipedia": "Wikipedia",
273273
"findReviewsOn": "Bewertungen finden auf",
274+
"openReviewPlatform": "Auf {platform} öffnen",
275+
"searchReviewPlatform": "{platform} durchsuchen",
276+
"openExternalReference": "Auf {platform} öffnen",
274277
"openDataNote": "OpenMapX verwendet offene Daten — einzelne Bewertungen werden nicht erfasst.",
275278
"reviewsCount": "{count, plural, one {# Bewertung} other {# Bewertungen}}",
276279
"writeReview": "Bewertung schreiben",
@@ -581,6 +584,10 @@
581584
"pricingPerKm": "Pro km",
582585
"pricingPerHour": "Pro Stunde",
583586
"pricingFree": "Kostenlos",
587+
"filterPaid": "Kostenpflichtig",
588+
"filterSpacesAvailable": "Freie Plätze verfügbar",
589+
"filterIncludeFull": "Volle Parkplätze einbeziehen",
590+
"filterDisabledParking": "Behindertenparken",
584591
"sectionBook": "Buchen",
585592
"sectionDirections": "Wegbeschreibung",
586593
"sectionNotes": "Hinweise",
@@ -606,6 +613,7 @@
606613
"parking": "Parken",
607614
"freeSpaces": "Freie Plätze",
608615
"sectionFacility": "Einrichtung",
616+
"sectionDataQuality": "Datenqualität",
609617
"sectionFee": "Gebühren",
610618
"rowFreeSpaces": "Freie Plätze",
611619
"rowOccupancy": "Auslastung",
@@ -616,10 +624,18 @@
616624
"rowCapacity": "Kapazität",
617625
"rowStatus": "Status",
618626
"rowAccess": "Zugang",
627+
"rowDataFreshness": "Datenaktualität",
619628
"rowNearestStation": "Nächster Bahnhof",
629+
"sectionSource": "Quelle",
630+
"rowSource": "Quelle",
631+
"rowSourceId": "Quell-ID",
632+
"rowLicense": "Lizenz",
620633
"sectionPayment": "Bezahlung",
621634
"sectionNearbyTransit": "ÖPNV in der Nähe",
622635
"openStop": "{name} öffnen",
636+
"externalMediaTitle": "Externe Medien",
637+
"externalMediaBody": "Wird vom Kameraanbieter geladen. Ihre IP-Adresse kann dort sichtbar werden.",
638+
"loadExternalMedia": "Medien laden",
623639
"dur20min": "20 Min.",
624640
"dur30min": "30 Min.",
625641
"dur1h": "1 Std.",
@@ -630,6 +646,14 @@
630646
"dur1month": "1 Monat",
631647
"dur1monthLong": "1 Monat (Dauerparken)",
632648
"dur1monthReserved": "1 Monat (reserviert)",
649+
"durationMinutes": "{count} Min.",
650+
"durationHours": "{count, plural, one {# Std.} other {# Std.}}",
651+
"durationDays": "{count, plural, one {# Tag} other {# Tage}}",
652+
"tariffMaxDayPrice": "Max. Tagespreis",
653+
"tariffMonthly": "Monatlich",
654+
"tariffMonthlyResident": "Monatlich (Anwohner)",
655+
"tariffMonthlyPass": "Monatskarte",
656+
"tariffYearlyPass": "Jahreskarte",
633657
"parkingGarage": "Parkhaus",
634658
"undergroundGarage": "Tiefgarage",
635659
"surfaceLot": "Parkplatz",
@@ -640,6 +664,17 @@
640664
"yes": "Ja",
641665
"open": "Geöffnet",
642666
"closed": "Geschlossen",
667+
"stale": "Veraltet",
668+
"summaryAvailabilityStale": "Verfügbarkeit veraltet",
669+
"summaryClosed": "Geschlossen",
670+
"summaryFull": "Voll",
671+
"summaryFreeCapacity": "{free}/{capacity} frei",
672+
"summaryFreeSpaces": "{count, plural, one {# frei} other {# frei}}",
673+
"summarySpaces": "{count, plural, one {# Platz} other {# Plätze}}",
674+
"qualityRealtimeAvailabilityStale": "Echtzeit-Verfügbarkeit ist älter als 30 Minuten.",
675+
"qualityFreeSpacesClampedToCapacity": "Die Echtzeit-Zahl freier Plätze war höher als die Kapazität und wurde begrenzt.",
676+
"qualityNegativeFreeSpacesClamped": "Die Echtzeit-Zahl freier Plätze war negativ und wurde auf 0 begrenzt.",
677+
"evChargingAvailable": "E-Laden verfügbar",
643678
"customers": "Kunden",
644679
"private": "Privat",
645680
"permit": "Genehmigung",
@@ -859,6 +894,7 @@
859894
"backupCode": "Wiederherstellungscode",
860895
"signInWithPasskey": "Mit Passkey anmelden",
861896
"continueWith": "Weiter mit {provider}",
897+
"oauthDirectDisclosure": "Drittanbieter-Anmeldung leitet Ihren Browser zu diesem Anbieter weiter; dabei kann er Ihre IP-Adresse erhalten.",
862898
"noAccount": "Noch kein Konto?",
863899
"haveAccount": "Bereits ein Konto?",
864900
"signUpFailed": "Registrierung fehlgeschlagen",
@@ -911,13 +947,19 @@
911947
"removeArea": "Offline-Bereich entfernen?",
912948
"removeAreaDescription": "Dies löscht die gecachten Kartendaten für \"{name}\" ({size}).",
913949
"storageTitle": "Speicher",
914-
"storageDescription": "Zwischengespeicherte Kartenkacheln, Suchergebnisse und Offline-Bereiche.",
950+
"storageDescription": "Zwischengespeicherte Kartenkacheln, optionale kürzliche Kartendaten und Offline-Bereiche.",
915951
"totalUsed": "Belegt: {used} von {total} ({percent}%)",
916952
"appShell": "App-Shell",
953+
"preferences": "Einstellungen",
917954
"mapTiles": "Kartenkacheln",
918955
"vectorTiles": "Vektor-Kacheln",
919956
"apiResponses": "API-Antworten",
957+
"recentMapDataCache": "Kürzliche Kartendaten",
920958
"offlineAreas": "Offline-Bereiche",
959+
"rememberRecentMapData": "Kürzliche Kartendaten auf diesem Gerät merken",
960+
"rememberRecentMapDataDescription": "Speichert kürzliche Suchanfragen, Routen, Ortsdetails, Wetter, Fotos und Ergebnisse in der Nähe auf diesem Gerät. Die meisten Einträge laufen innerhalb von Minuten bis 24 Stunden ab; Foto-Lookup-Caches können bis zu 7 Tage gespeichert bleiben. Dies kann eingegebene Suchtexte und genaue Kartenkoordinaten umfassen.",
961+
"clearRecentMapData": "Kürzliche Kartendaten löschen",
962+
"clearRecentMapDataDescription": "Entfernt gespeicherte kürzliche Suchanfragen, Routen, Koordinaten und API-Antwort-Caches von diesem Gerät.",
921963
"clearTiles": "Zwischengespeicherte Kacheln löschen",
922964
"clearTilesDescription": "Entfernt alle automatisch zwischengespeicherten Kartenkacheln. Deine heruntergeladenen Offline-Bereiche bleiben erhalten.",
923965
"back": "Zurück zur Karte"
@@ -950,7 +992,12 @@
950992
"photo360": "360\u00b0-Foto",
951993
"unknownLocation": "Unbekannter Ort",
952994
"showOnMap": "Auf der Karte anzeigen",
953-
"moreOptions": "Weitere Optionen"
995+
"moreOptions": "Weitere Optionen",
996+
"mapillaryNoticeTitle": "Mapillary-Viewer laden?",
997+
"mapillaryNoticeBody": "Stra\u00dfenansichtsbilder werden von Mapillary bereitgestellt. Wenn Sie fortfahren, verbindet sich Ihr Browser direkt mit Mapillary/Meta, um den Viewer und die Bilder zu laden.",
998+
"mapillaryNoticeData": "Mapillary/Meta kann Ihre IP-Adresse, Browser- und Ger\u00e4teinformationen sowie das ausgew\u00e4hlte Bild oder den betrachteten Ort erhalten.",
999+
"mapillaryPrivacyLink": "Datenschutzhinweise von Mapillary",
1000+
"loadMapillaryViewer": "Mapillary-Viewer laden"
9541001
},
9551002
"photoGallery": {
9561003
"previousPhoto": "Vorheriges Foto",

packages/i18n/locales/en.json

Lines changed: 49 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,9 @@
271271
"copyWebsite": "Copy website",
272272
"wikipedia": "Wikipedia",
273273
"findReviewsOn": "Find reviews on",
274+
"openReviewPlatform": "Open on {platform}",
275+
"searchReviewPlatform": "Search {platform}",
276+
"openExternalReference": "Open on {platform}",
274277
"openDataNote": "OpenMapX uses open data — individual reviews are not collected.",
275278
"reviewsCount": "{count, plural, one {# review} other {# reviews}}",
276279
"writeReview": "Write a review",
@@ -581,6 +584,10 @@
581584
"pricingPerKm": "Per km",
582585
"pricingPerHour": "Per hour",
583586
"pricingFree": "Free",
587+
"filterPaid": "Paid",
588+
"filterSpacesAvailable": "Spaces Available",
589+
"filterIncludeFull": "Include Full",
590+
"filterDisabledParking": "Disabled Parking",
584591
"sectionBook": "Book",
585592
"sectionDirections": "Directions",
586593
"sectionNotes": "Notes",
@@ -606,6 +613,7 @@
606613
"parking": "Parking",
607614
"freeSpaces": "Free Spaces",
608615
"sectionFacility": "Facility",
616+
"sectionDataQuality": "Data Quality",
609617
"sectionFee": "Fee",
610618
"rowFreeSpaces": "Free Spaces",
611619
"rowOccupancy": "Occupancy",
@@ -616,10 +624,18 @@
616624
"rowCapacity": "Capacity",
617625
"rowStatus": "Status",
618626
"rowAccess": "Access",
627+
"rowDataFreshness": "Data Freshness",
619628
"rowNearestStation": "Nearest Station",
629+
"sectionSource": "Source",
630+
"rowSource": "Source",
631+
"rowSourceId": "Source ID",
632+
"rowLicense": "License",
620633
"sectionPayment": "Payment",
621634
"sectionNearbyTransit": "Nearby Transit",
622635
"openStop": "Open {name}",
636+
"externalMediaTitle": "External media",
637+
"externalMediaBody": "Loads from the camera provider. Your IP address may be visible to them.",
638+
"loadExternalMedia": "Load media",
623639
"dur20min": "20 min",
624640
"dur30min": "30 min",
625641
"dur1h": "1 hour",
@@ -630,6 +646,14 @@
630646
"dur1month": "1 month",
631647
"dur1monthLong": "1 month (long-term)",
632648
"dur1monthReserved": "1 month (reserved)",
649+
"durationMinutes": "{count} min",
650+
"durationHours": "{count, plural, one {# hour} other {# hours}}",
651+
"durationDays": "{count, plural, one {# day} other {# days}}",
652+
"tariffMaxDayPrice": "Max day price",
653+
"tariffMonthly": "Monthly",
654+
"tariffMonthlyResident": "Monthly (resident)",
655+
"tariffMonthlyPass": "Monthly pass",
656+
"tariffYearlyPass": "Yearly pass",
633657
"parkingGarage": "Parking Garage",
634658
"undergroundGarage": "Underground Garage",
635659
"surfaceLot": "Surface Lot",
@@ -640,6 +664,17 @@
640664
"yes": "Yes",
641665
"open": "Open",
642666
"closed": "Closed",
667+
"stale": "Stale",
668+
"summaryAvailabilityStale": "Availability stale",
669+
"summaryClosed": "Closed",
670+
"summaryFull": "Full",
671+
"summaryFreeCapacity": "{free}/{capacity} free",
672+
"summaryFreeSpaces": "{count, plural, one {# free} other {# free}}",
673+
"summarySpaces": "{count, plural, one {# space} other {# spaces}}",
674+
"qualityRealtimeAvailabilityStale": "Realtime availability is older than 30 minutes.",
675+
"qualityFreeSpacesClampedToCapacity": "Realtime free-space count exceeded capacity and was clamped.",
676+
"qualityNegativeFreeSpacesClamped": "Realtime free-space count was negative and was clamped to 0.",
677+
"evChargingAvailable": "EV charging available",
643678
"customers": "Customers",
644679
"private": "Private",
645680
"permit": "Permit",
@@ -859,6 +894,7 @@
859894
"backupCode": "Backup code",
860895
"signInWithPasskey": "Sign in with passkey",
861896
"continueWith": "Continue with {provider}",
897+
"oauthDirectDisclosure": "Third-party sign-in redirects your browser to that provider, so they may receive your IP address.",
862898
"noAccount": "Don\u2019t have an account?",
863899
"haveAccount": "Already have an account?",
864900
"signUpFailed": "Sign up failed",
@@ -911,13 +947,19 @@
911947
"removeArea": "Remove offline area?",
912948
"removeAreaDescription": "This will delete the cached map data for \"{name}\" ({size}).",
913949
"storageTitle": "Storage",
914-
"storageDescription": "Cached map tiles, search results, and offline areas.",
950+
"storageDescription": "Cached map tiles, optional recent map data, and offline areas.",
915951
"totalUsed": "Used: {used} of {total} ({percent}%)",
916952
"appShell": "App shell",
953+
"preferences": "Preferences",
917954
"mapTiles": "Map tiles",
918955
"vectorTiles": "Vector tiles",
919956
"apiResponses": "API responses",
957+
"recentMapDataCache": "Recent map data",
920958
"offlineAreas": "Offline areas",
959+
"rememberRecentMapData": "Remember recent map data on this device",
960+
"rememberRecentMapDataDescription": "Stores recent searches, routes, place details, weather, photos, and nearby results on this device. Most entries expire within minutes to 24 hours; photo lookup caches can remain up to 7 days. This can include typed search text and precise map coordinates.",
961+
"clearRecentMapData": "Clear recent map data",
962+
"clearRecentMapDataDescription": "Removes persisted recent searches, routes, coordinates, and API response caches from this device.",
921963
"clearTiles": "Clear cached tiles",
922964
"clearTilesDescription": "Removes all map tiles cached on the fly. Your downloaded offline areas are kept.",
923965
"back": "Back to map"
@@ -950,7 +992,12 @@
950992
"photo360": "360\u00b0 photo",
951993
"unknownLocation": "Unknown location",
952994
"showOnMap": "Show on map",
953-
"moreOptions": "More options"
995+
"moreOptions": "More options",
996+
"mapillaryNoticeTitle": "Load Mapillary viewer?",
997+
"mapillaryNoticeBody": "Street-level imagery is provided by Mapillary. If you continue, your browser will connect directly to Mapillary/Meta to load the viewer and imagery.",
998+
"mapillaryNoticeData": "Mapillary/Meta may receive your IP address, browser and device information, and the selected image or viewed location.",
999+
"mapillaryPrivacyLink": "Mapillary privacy policy",
1000+
"loadMapillaryViewer": "Load Mapillary viewer"
9541001
},
9551002
"photoGallery": {
9561003
"previousPhoto": "Previous photo",

0 commit comments

Comments
 (0)