mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-10-22 15:06:32 +00:00
fix(tours): a city walk's walking time, stays and total read apart and alike everywhere, and a stay plans no route again (CW-02)
A stay, a name, an importance or a protection set in a stop's dialog no longer plans a city walk's route again: the walk stays ready to save, its time overview follows at once, and one undo takes the change back without routing either. A stop moved or added plans the route again as before. A walk saves no breaks, so a cafe never counts as a stay and as a break at once, and a break left from another type neither counts nor holds its save up. The planner and the tour detail show a walk's walking time, its stays and their total apart and in the same words: 45 minutes of walking, a museum of 90 minutes and a cafe of 30 minutes make 2 h 45 min. A stay not entered yet makes the stays and the total at least what is known, stays nobody entered read not known yet, and stays entered as 0 read 0 min. A total entered by hand keeps its own label, and the computed total shows beside it. The head of the tour detail, the day row on the desktop and the phone, the tour summary and the library of other trips show that same total, with a ≥ where a stay is missing. Their time on the move is called walking, and the summary says a walk is planned with its stays rather than breaks. The tour list and the library carry the minutes a walk's stops are entered with and how many have no stay yet, counted from the walk's points, so the way back of a loop is no stop and its start's stay counts once. A loop run the other way keeps its start as the stop there, with its key, name and stay. The planner's waypoint list keeps the rows of a leg in a file of their own, and the tour detail its name heading in a part of its own, so both stay within their size limits.
This commit is contained in:
@@ -294,6 +294,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'وقت المسار المحسوب',
|
||||
'tours.scope.imported': 'الوقت من الاستيراد',
|
||||
'tours.scope.planned': 'المخطط مع الاستراحات',
|
||||
'tours.scope.plannedWithStays': 'المخطط مع مدد البقاء',
|
||||
'tours.scope.noMeasures': 'لا مسافة أو ارتفاعات أو أوقات معروفة بعد.',
|
||||
'tours.library.open': 'نقل جولة من رحلة أخرى',
|
||||
'tours.library.eyebrow': 'نقل جولة',
|
||||
@@ -501,6 +502,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'وقت المسار سيرًا بين المحطات، دون مدد البقاء.',
|
||||
'tours.walk.stays': 'مدد البقاء',
|
||||
'tours.walk.totalAtLeast': '{time} على الأقل',
|
||||
'tours.walk.totalComputed': 'محسوب',
|
||||
'tours.walk.stations': 'محطات الجولة',
|
||||
'tours.walk.stationNumbered': 'المحطة {number}',
|
||||
'tours.walk.progress': 'تمت زيارة {visited} من {total}',
|
||||
|
||||
@@ -283,6 +283,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Marşrut vaxtı',
|
||||
'tours.scope.imported': 'İdxaldan vaxt',
|
||||
'tours.scope.planned': 'Fasilələrlə planlaşdırılan',
|
||||
'tours.scope.plannedWithStays': 'Qalmalarla planlaşdırılan',
|
||||
'tours.scope.noMeasures': 'Hələ məsafə, hündürlük və ya vaxt məlum deyil.',
|
||||
'tours.library.open': 'Başqa səfərdən tur götür',
|
||||
'tours.library.eyebrow': 'Turu götür',
|
||||
@@ -496,6 +497,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Dayanacaqlar arasında marşrutlaşdırıcının piyada vaxtı, qalma müddətləri olmadan.',
|
||||
'tours.walk.stays': 'Qalmalar',
|
||||
'tours.walk.totalAtLeast': 'ən azı {time}',
|
||||
'tours.walk.totalComputed': 'Hesablanmış',
|
||||
'tours.walk.stations': 'Gəzintinin dayanacaqları',
|
||||
'tours.walk.stationNumbered': 'Dayanacaq {number}',
|
||||
'tours.walk.progress': '{total} dayanacaqdan {visited} ziyarət edildi',
|
||||
|
||||
@@ -288,6 +288,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Tempo calculado',
|
||||
'tours.scope.imported': 'Tempo das importações',
|
||||
'tours.scope.planned': 'Planejado com pausas',
|
||||
'tours.scope.plannedWithStays': 'Planejado com permanências',
|
||||
'tours.scope.noMeasures': 'Ainda sem distância, altitudes ou tempos conhecidos.',
|
||||
'tours.library.open': 'Trazer um passeio de outra viagem',
|
||||
'tours.library.eyebrow': 'Trazer passeio',
|
||||
@@ -502,6 +503,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'O tempo a pé do roteador entre as paradas, sem as permanências.',
|
||||
'tours.walk.stays': 'Permanências',
|
||||
'tours.walk.totalAtLeast': 'pelo menos {time}',
|
||||
'tours.walk.totalComputed': 'Calculado',
|
||||
'tours.walk.stations': 'Paradas do passeio',
|
||||
'tours.walk.stationNumbered': 'Parada {number}',
|
||||
'tours.walk.progress': '{visited} de {total} visitadas',
|
||||
|
||||
@@ -289,6 +289,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Temps calculat',
|
||||
'tours.scope.imported': 'Temps de les importacions',
|
||||
'tours.scope.planned': 'Planificat amb pauses',
|
||||
'tours.scope.plannedWithStays': 'Planificat amb estades',
|
||||
'tours.scope.noMeasures': 'Encara no hi ha distància, alçades ni temps coneguts.',
|
||||
'tours.library.open': "Agafar una ruta d'un altre viatge",
|
||||
'tours.library.eyebrow': 'Agafar una ruta',
|
||||
@@ -503,6 +504,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'El temps a peu del càlcul de ruta entre parades, sense les estades.',
|
||||
'tours.walk.stays': 'Estades',
|
||||
'tours.walk.totalAtLeast': 'com a mínim {time}',
|
||||
'tours.walk.totalComputed': 'Calculat',
|
||||
'tours.walk.stations': 'Parades de la ruta',
|
||||
'tours.walk.stationNumbered': 'Parada {number}',
|
||||
'tours.walk.progress': '{visited} de {total} visitades',
|
||||
|
||||
@@ -283,6 +283,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Vypočtený čas',
|
||||
'tours.scope.imported': 'Čas z importů',
|
||||
'tours.scope.planned': 'Plán s přestávkami',
|
||||
'tours.scope.plannedWithStays': 'Plán s pobyty',
|
||||
'tours.scope.noMeasures': 'Zatím není známa vzdálenost, výšky ani časy.',
|
||||
'tours.library.open': 'Převzít túru z jiné cesty',
|
||||
'tours.library.eyebrow': 'Převzít túru',
|
||||
@@ -493,6 +494,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Doba chůze mezi zastávkami podle plánovače trasy, bez pobytů.',
|
||||
'tours.walk.stays': 'Pobyty',
|
||||
'tours.walk.totalAtLeast': 'nejméně {time}',
|
||||
'tours.walk.totalComputed': 'Vypočteno',
|
||||
'tours.walk.stations': 'Zastávky procházky',
|
||||
'tours.walk.stationNumbered': 'Zastávka {number}',
|
||||
'tours.walk.progress': 'Navštíveno {visited} z {total}',
|
||||
|
||||
@@ -292,6 +292,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Routingzeit',
|
||||
'tours.scope.imported': 'Zeit laut Import',
|
||||
'tours.scope.planned': 'Geplant mit Pausen',
|
||||
'tours.scope.plannedWithStays': 'Geplant mit Aufenthalten',
|
||||
'tours.scope.noMeasures': 'Noch keine Distanz, Höhen oder Zeiten bekannt.',
|
||||
'tours.library.open': 'Tour aus anderer Reise übernehmen',
|
||||
'tours.library.eyebrow': 'Tour übernehmen',
|
||||
@@ -507,6 +508,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Die Zeit des Routers zu Fuß zwischen den Stationen, ohne die Aufenthalte.',
|
||||
'tours.walk.stays': 'Aufenthalte',
|
||||
'tours.walk.totalAtLeast': 'mindestens {time}',
|
||||
'tours.walk.totalComputed': 'Berechnet',
|
||||
'tours.walk.stations': 'Stationen',
|
||||
'tours.walk.stationNumbered': 'Station {number}',
|
||||
'tours.walk.progress': '{visited} von {total} besucht',
|
||||
|
||||
@@ -282,6 +282,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Routed time',
|
||||
'tours.scope.imported': 'Time from imports',
|
||||
'tours.scope.planned': 'Planned with breaks',
|
||||
'tours.scope.plannedWithStays': 'Planned with stays',
|
||||
'tours.scope.noMeasures': 'No distance, heights or times known yet.',
|
||||
'tours.library.open': 'Take over a tour from another trip',
|
||||
'tours.library.eyebrow': 'Take over a tour',
|
||||
@@ -494,6 +495,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': "The router's time on foot between the stops, without the stays.",
|
||||
'tours.walk.stays': 'Stays',
|
||||
'tours.walk.totalAtLeast': 'at least {time}',
|
||||
'tours.walk.totalComputed': 'Computed',
|
||||
'tours.walk.stations': 'Stops of the walk',
|
||||
'tours.walk.stationNumbered': 'Stop {number}',
|
||||
'tours.walk.progress': '{visited} of {total} visited',
|
||||
|
||||
@@ -288,6 +288,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Tiempo calculado',
|
||||
'tours.scope.imported': 'Tiempo de las importaciones',
|
||||
'tours.scope.planned': 'Planificado con pausas',
|
||||
'tours.scope.plannedWithStays': 'Planificado con estancias',
|
||||
'tours.scope.noMeasures': 'Aún no se conocen distancia, alturas ni tiempos.',
|
||||
'tours.library.open': 'Traer una ruta de otro viaje',
|
||||
'tours.library.eyebrow': 'Traer una ruta',
|
||||
@@ -501,6 +502,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'El tiempo a pie del planificador entre paradas, sin las estancias.',
|
||||
'tours.walk.stays': 'Estancias',
|
||||
'tours.walk.totalAtLeast': 'al menos {time}',
|
||||
'tours.walk.totalComputed': 'Calculado',
|
||||
'tours.walk.stations': 'Paradas del paseo',
|
||||
'tours.walk.stationNumbered': 'Parada {number}',
|
||||
'tours.walk.progress': '{visited} de {total} visitadas',
|
||||
|
||||
@@ -285,6 +285,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Arvutatud aeg',
|
||||
'tours.scope.imported': 'Aeg importidest',
|
||||
'tours.scope.planned': 'Planeeritud koos pausidega',
|
||||
'tours.scope.plannedWithStays': 'Planeeritud koos peatumistega',
|
||||
'tours.scope.noMeasures': 'Vahemaa, kõrgused ja ajad pole veel teada.',
|
||||
'tours.library.open': 'Võta matk üle teiselt reisilt',
|
||||
'tours.library.eyebrow': 'Matka ülevõtmine',
|
||||
@@ -496,6 +497,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Marsruutija kõndimisaeg peatuste vahel, ilma peatumisteta.',
|
||||
'tours.walk.stays': 'Peatumised',
|
||||
'tours.walk.totalAtLeast': 'vähemalt {time}',
|
||||
'tours.walk.totalComputed': 'Arvutatud',
|
||||
'tours.walk.stations': 'Jalutuse peatused',
|
||||
'tours.walk.stationNumbered': 'Peatus {number}',
|
||||
'tours.walk.progress': '{visited} / {total} külastatud',
|
||||
|
||||
@@ -295,6 +295,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Temps calculé',
|
||||
'tours.scope.imported': 'Temps des imports',
|
||||
'tours.scope.planned': 'Prévu avec pauses',
|
||||
'tours.scope.plannedWithStays': 'Prévu avec arrêts',
|
||||
'tours.scope.noMeasures': "Aucune distance, altitude ni durée connue pour l'instant.",
|
||||
'tours.library.open': "Reprendre un itinéraire d'un autre voyage",
|
||||
'tours.library.eyebrow': 'Reprendre un itinéraire',
|
||||
@@ -511,6 +512,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': "Le temps à pied du calcul d'itinéraire entre les étapes, sans les arrêts.",
|
||||
'tours.walk.stays': 'Arrêts',
|
||||
'tours.walk.totalAtLeast': 'au moins {time}',
|
||||
'tours.walk.totalComputed': 'Calculé',
|
||||
'tours.walk.stations': 'Étapes de la balade',
|
||||
'tours.walk.stationNumbered': 'Étape {number}',
|
||||
'tours.walk.progress': '{visited} sur {total} visitées',
|
||||
|
||||
@@ -295,6 +295,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Υπολογισμένος χρόνος',
|
||||
'tours.scope.imported': 'Χρόνος από εισαγωγές',
|
||||
'tours.scope.planned': 'Με διαλείμματα',
|
||||
'tours.scope.plannedWithStays': 'Με παραμονές',
|
||||
'tours.scope.noMeasures': 'Δεν είναι ακόμη γνωστά απόσταση, υψόμετρα ή χρόνοι.',
|
||||
'tours.library.open': 'Μεταφορά διαδρομής από άλλο ταξίδι',
|
||||
'tours.library.eyebrow': 'Μεταφορά διαδρομής',
|
||||
@@ -511,6 +512,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Ο χρόνος με τα πόδια του δρομολογητή ανάμεσα στις στάσεις, χωρίς τις παραμονές.',
|
||||
'tours.walk.stays': 'Παραμονές',
|
||||
'tours.walk.totalAtLeast': 'τουλάχιστον {time}',
|
||||
'tours.walk.totalComputed': 'Υπολογισμένο',
|
||||
'tours.walk.stations': 'Στάσεις της βόλτας',
|
||||
'tours.walk.stationNumbered': 'Στάση {number}',
|
||||
'tours.walk.progress': '{visited} από {total} επισκέψεις',
|
||||
|
||||
@@ -290,6 +290,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Számított idő',
|
||||
'tours.scope.imported': 'Idő az importokból',
|
||||
'tours.scope.planned': 'Tervezett, szünetekkel',
|
||||
'tours.scope.plannedWithStays': 'Tervezett, tartózkodásokkal',
|
||||
'tours.scope.noMeasures': 'Még nem ismert távolság, magasság vagy idő.',
|
||||
'tours.library.open': 'Túra átvétele másik útból',
|
||||
'tours.library.eyebrow': 'Túra átvétele',
|
||||
@@ -503,6 +504,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Az útvonaltervező gyalogos ideje a megállók között, a tartózkodások nélkül.',
|
||||
'tours.walk.stays': 'Tartózkodások',
|
||||
'tours.walk.totalAtLeast': 'legalább {time}',
|
||||
'tours.walk.totalComputed': 'Számított',
|
||||
'tours.walk.stations': 'A séta megállói',
|
||||
'tours.walk.stationNumbered': '{number}. megálló',
|
||||
'tours.walk.progress': '{total} megállóból {visited} meglátogatva',
|
||||
|
||||
@@ -282,6 +282,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Waktu perutean',
|
||||
'tours.scope.imported': 'Waktu dari impor',
|
||||
'tours.scope.planned': 'Rencana dengan istirahat',
|
||||
'tours.scope.plannedWithStays': 'Rencana dengan lama singgah',
|
||||
'tours.scope.noMeasures': 'Belum ada jarak, ketinggian, atau waktu yang diketahui.',
|
||||
'tours.library.open': 'Ambil tur dari perjalanan lain',
|
||||
'tours.library.eyebrow': 'Ambil tur',
|
||||
@@ -495,6 +496,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Waktu jalan kaki dari perute di antara titik singgah, tanpa lama singgah.',
|
||||
'tours.walk.stays': 'Lama singgah',
|
||||
'tours.walk.totalAtLeast': 'setidaknya {time}',
|
||||
'tours.walk.totalComputed': 'Dihitung',
|
||||
'tours.walk.stations': 'Titik singgah rute',
|
||||
'tours.walk.stationNumbered': 'Titik {number}',
|
||||
'tours.walk.progress': '{visited} dari {total} dikunjungi',
|
||||
|
||||
@@ -290,6 +290,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Tempo calcolato',
|
||||
'tours.scope.imported': 'Tempo dalle importazioni',
|
||||
'tours.scope.planned': 'Pianificato con pause',
|
||||
'tours.scope.plannedWithStays': 'Pianificato con soste',
|
||||
'tours.scope.noMeasures': 'Nessuna distanza, quota o tempo ancora noto.',
|
||||
'tours.library.open': 'Riprendi un percorso da un altro viaggio',
|
||||
'tours.library.eyebrow': 'Riprendi un percorso',
|
||||
@@ -502,6 +503,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Il tempo a piedi del calcolo percorso tra le tappe, senza le soste.',
|
||||
'tours.walk.stays': 'Soste',
|
||||
'tours.walk.totalAtLeast': 'almeno {time}',
|
||||
'tours.walk.totalComputed': 'Calcolato',
|
||||
'tours.walk.stations': 'Tappe del percorso',
|
||||
'tours.walk.stationNumbered': 'Tappa {number}',
|
||||
'tours.walk.progress': '{visited} su {total} visitate',
|
||||
|
||||
@@ -276,6 +276,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'ルート計算の時間',
|
||||
'tours.scope.imported': 'インポートの時間',
|
||||
'tours.scope.planned': '休憩込みの計画',
|
||||
'tours.scope.plannedWithStays': '滞在込みの計画',
|
||||
'tours.scope.noMeasures': '距離、高度、時間はまだわかりません。',
|
||||
'tours.library.open': '別の旅からツアーを取り込む',
|
||||
'tours.library.eyebrow': 'ツアーを取り込む',
|
||||
@@ -487,6 +488,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'ルート計算による立ち寄り先間の徒歩時間。滞在時間は含みません。',
|
||||
'tours.walk.stays': '滞在',
|
||||
'tours.walk.totalAtLeast': '{time} 以上',
|
||||
'tours.walk.totalComputed': '計算値',
|
||||
'tours.walk.stations': '立ち寄り先',
|
||||
'tours.walk.stationNumbered': '立ち寄り先 {number}',
|
||||
'tours.walk.progress': '{total} 件中 {visited} 件訪問済み',
|
||||
|
||||
@@ -274,6 +274,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': '경로 계산 시간',
|
||||
'tours.scope.imported': '가져오기 시간',
|
||||
'tours.scope.planned': '휴식 포함 계획',
|
||||
'tours.scope.plannedWithStays': '머무는 시간 포함 계획',
|
||||
'tours.scope.noMeasures': '아직 알려진 거리, 고도, 시간이 없습니다.',
|
||||
'tours.library.open': '다른 여행에서 투어 가져오기',
|
||||
'tours.library.eyebrow': '투어 가져오기',
|
||||
@@ -483,6 +484,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': '경로 계산기가 낸 정류지 사이 도보 시간이며, 머무는 시간은 빠져 있습니다.',
|
||||
'tours.walk.stays': '머무는 시간',
|
||||
'tours.walk.totalAtLeast': '최소 {time}',
|
||||
'tours.walk.totalComputed': '계산값',
|
||||
'tours.walk.stations': '산책 정류지',
|
||||
'tours.walk.stationNumbered': '정류지 {number}',
|
||||
'tours.walk.progress': '{total}곳 중 {visited}곳 방문',
|
||||
|
||||
@@ -291,6 +291,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Berekende tijd',
|
||||
'tours.scope.imported': 'Tijd uit imports',
|
||||
'tours.scope.planned': 'Gepland met pauzes',
|
||||
'tours.scope.plannedWithStays': 'Gepland met verblijven',
|
||||
'tours.scope.noMeasures': 'Nog geen afstand, hoogtes of tijden bekend.',
|
||||
'tours.library.open': 'Tocht overnemen uit een andere reis',
|
||||
'tours.library.eyebrow': 'Tocht overnemen',
|
||||
@@ -505,6 +506,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'De looptijd van de routeplanner tussen de haltes, zonder het verblijf.',
|
||||
'tours.walk.stays': 'Verblijven',
|
||||
'tours.walk.totalAtLeast': 'minstens {time}',
|
||||
'tours.walk.totalComputed': 'Berekend',
|
||||
'tours.walk.stations': 'Haltes van de wandeling',
|
||||
'tours.walk.stationNumbered': 'Halte {number}',
|
||||
'tours.walk.progress': '{visited} van {total} bezocht',
|
||||
|
||||
@@ -297,6 +297,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Czas wyliczony',
|
||||
'tours.scope.imported': 'Czas z importów',
|
||||
'tours.scope.planned': 'Plan z przerwami',
|
||||
'tours.scope.plannedWithStays': 'Plan z postojami',
|
||||
'tours.scope.noMeasures': 'Brak jeszcze znanego dystansu, wysokości i czasów.',
|
||||
'tours.library.open': 'Przejmij trasę z innej podróży',
|
||||
'tours.library.eyebrow': 'Przejmij trasę',
|
||||
@@ -510,6 +511,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Czas marszu między przystankami według planera trasy, bez postojów.',
|
||||
'tours.walk.stays': 'Postoje',
|
||||
'tours.walk.totalAtLeast': 'co najmniej {time}',
|
||||
'tours.walk.totalComputed': 'Obliczono',
|
||||
'tours.walk.stations': 'Przystanki trasy',
|
||||
'tours.walk.stationNumbered': 'Przystanek {number}',
|
||||
'tours.walk.progress': 'Odwiedzono {visited} z {total}',
|
||||
|
||||
@@ -300,6 +300,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Расчётное время',
|
||||
'tours.scope.imported': 'Время из импорта',
|
||||
'tours.scope.planned': 'План с перерывами',
|
||||
'tours.scope.plannedWithStays': 'План с остановками',
|
||||
'tours.scope.noMeasures': 'Расстояние, высоты и время пока неизвестны.',
|
||||
'tours.library.open': 'Взять маршрут из другой поездки',
|
||||
'tours.library.eyebrow': 'Взять маршрут',
|
||||
@@ -513,6 +514,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Время пешком между остановками по расчёту маршрута, без остановок на месте.',
|
||||
'tours.walk.stays': 'Остановки',
|
||||
'tours.walk.totalAtLeast': 'не меньше {time}',
|
||||
'tours.walk.totalComputed': 'Расчёт',
|
||||
'tours.walk.stations': 'Остановки прогулки',
|
||||
'tours.walk.stationNumbered': 'Остановка {number}',
|
||||
'tours.walk.progress': 'Посещено {visited} из {total}',
|
||||
|
||||
@@ -284,6 +284,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Vypočítaný čas',
|
||||
'tours.scope.imported': 'Čas z importov',
|
||||
'tours.scope.planned': 'Plán s prestávkami',
|
||||
'tours.scope.plannedWithStays': 'Plán s pobytmi',
|
||||
'tours.scope.noMeasures': 'Zatiaľ nie je známa vzdialenosť, výšky ani časy.',
|
||||
'tours.library.open': 'Prevziať túru z inej cesty',
|
||||
'tours.library.eyebrow': 'Prevziať túru',
|
||||
@@ -495,6 +496,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Čas chôdze medzi zastávkami podľa plánovača trasy, bez pobytov.',
|
||||
'tours.walk.stays': 'Pobyty',
|
||||
'tours.walk.totalAtLeast': 'najmenej {time}',
|
||||
'tours.walk.totalComputed': 'Vypočítané',
|
||||
'tours.walk.stations': 'Zastávky prechádzky',
|
||||
'tours.walk.stationNumbered': 'Zastávka {number}',
|
||||
'tours.walk.progress': 'Navštívené {visited} z {total}',
|
||||
|
||||
@@ -281,6 +281,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Beräknad tid',
|
||||
'tours.scope.imported': 'Tid från importer',
|
||||
'tours.scope.planned': 'Planerat med pauser',
|
||||
'tours.scope.plannedWithStays': 'Planerat med vistelser',
|
||||
'tours.scope.noMeasures': 'Ingen sträcka, höjd eller tid känd ännu.',
|
||||
'tours.library.open': 'Hämta en tur från en annan resa',
|
||||
'tours.library.eyebrow': 'Hämta en tur',
|
||||
@@ -494,6 +495,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Ruttplanerarens gångtid mellan stoppen, utan vistelserna.',
|
||||
'tours.walk.stays': 'Vistelser',
|
||||
'tours.walk.totalAtLeast': 'minst {time}',
|
||||
'tours.walk.totalComputed': 'Beräknad',
|
||||
'tours.walk.stations': 'Promenadens stopp',
|
||||
'tours.walk.stationNumbered': 'Stopp {number}',
|
||||
'tours.walk.progress': '{visited} av {total} besökta',
|
||||
|
||||
@@ -270,6 +270,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'เวลาจากการคำนวณเส้นทาง',
|
||||
'tours.scope.imported': 'เวลาจากการนำเข้า',
|
||||
'tours.scope.planned': 'วางแผนรวมพัก',
|
||||
'tours.scope.plannedWithStays': 'วางแผนรวมเวลาแวะพัก',
|
||||
'tours.scope.noMeasures': 'ยังไม่ทราบระยะทาง ความสูง หรือเวลา',
|
||||
'tours.library.open': 'นำทัวร์จากทริปอื่นมาใช้',
|
||||
'tours.library.eyebrow': 'นำทัวร์มาใช้',
|
||||
@@ -477,6 +478,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'เวลาเดินระหว่างจุดแวะจากตัวคำนวณเส้นทาง ไม่รวมเวลาแวะพัก',
|
||||
'tours.walk.stays': 'เวลาแวะพัก',
|
||||
'tours.walk.totalAtLeast': 'อย่างน้อย {time}',
|
||||
'tours.walk.totalComputed': 'ค่าคำนวณ',
|
||||
'tours.walk.stations': 'จุดแวะของทริป',
|
||||
'tours.walk.stationNumbered': 'จุดแวะที่ {number}',
|
||||
'tours.walk.progress': 'แวะแล้ว {visited} จาก {total}',
|
||||
|
||||
@@ -20,7 +20,7 @@ const tokens = (value: string) => [...value.matchAll(/\{[^{}]+\}/g)].map((match)
|
||||
// placeholder spec; here only the general keys are.
|
||||
const groups = pluralGroups(Object.keys(english));
|
||||
const generalKeys = (keys: string[]) => keys.filter((key) => !pluralFormOf(key, groups));
|
||||
const GENERAL_KEY_COUNT = 767;
|
||||
const GENERAL_KEY_COUNT = 769;
|
||||
|
||||
function literalKeys(source: string): string[] {
|
||||
const tree = ts.createSourceFile('locale.ts', source, ts.ScriptTarget.Latest, true);
|
||||
|
||||
@@ -283,6 +283,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Hesaplanan süre',
|
||||
'tours.scope.imported': 'İçe aktarmalardan süre',
|
||||
'tours.scope.planned': 'Molalarla planlanan',
|
||||
'tours.scope.plannedWithStays': 'Kalışlarla planlanan',
|
||||
'tours.scope.noMeasures': 'Henüz bilinen mesafe, yükseklik veya süre yok.',
|
||||
'tours.library.open': 'Başka bir geziden tur al',
|
||||
'tours.library.eyebrow': 'Tur al',
|
||||
@@ -497,6 +498,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Rota hesaplayıcının duraklar arasındaki yürüme süresi, kalışlar hariç.',
|
||||
'tours.walk.stays': 'Kalışlar',
|
||||
'tours.walk.totalAtLeast': 'en az {time}',
|
||||
'tours.walk.totalComputed': 'Hesaplanan',
|
||||
'tours.walk.stations': 'Yürüyüşün durakları',
|
||||
'tours.walk.stationNumbered': 'Durak {number}',
|
||||
'tours.walk.progress': '{total} duraktan {visited} ziyaret edildi',
|
||||
|
||||
@@ -296,6 +296,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Розрахований час',
|
||||
'tours.scope.imported': 'Час з імпорту',
|
||||
'tours.scope.planned': 'План з перервами',
|
||||
'tours.scope.plannedWithStays': 'План з перебуваннями',
|
||||
'tours.scope.noMeasures': 'Відстань, висоти й час поки невідомі.',
|
||||
'tours.library.open': 'Взяти маршрут з іншої подорожі',
|
||||
'tours.library.eyebrow': 'Взяти маршрут',
|
||||
@@ -509,6 +510,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Час пішки між зупинками за розрахунком маршруту, без перебування.',
|
||||
'tours.walk.stays': 'Перебування',
|
||||
'tours.walk.totalAtLeast': 'щонайменше {time}',
|
||||
'tours.walk.totalComputed': 'Розрахунок',
|
||||
'tours.walk.stations': 'Зупинки прогулянки',
|
||||
'tours.walk.stationNumbered': 'Зупинка {number}',
|
||||
'tours.walk.progress': 'Відвідано {visited} з {total}',
|
||||
|
||||
@@ -283,6 +283,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': 'Thời gian định tuyến',
|
||||
'tours.scope.imported': 'Thời gian từ bản nhập',
|
||||
'tours.scope.planned': 'Kế hoạch gồm nghỉ',
|
||||
'tours.scope.plannedWithStays': 'Kế hoạch gồm thời gian dừng',
|
||||
'tours.scope.noMeasures': 'Chưa biết quãng đường, độ cao hay thời gian.',
|
||||
'tours.library.open': 'Lấy chuyến từ chuyến đi khác',
|
||||
'tours.library.eyebrow': 'Lấy chuyến',
|
||||
@@ -494,6 +495,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': 'Thời gian đi bộ giữa các điểm dừng do bộ định tuyến tính, không gồm thời gian dừng.',
|
||||
'tours.walk.stays': 'Thời gian dừng',
|
||||
'tours.walk.totalAtLeast': 'ít nhất {time}',
|
||||
'tours.walk.totalComputed': 'Đã tính',
|
||||
'tours.walk.stations': 'Các điểm dừng',
|
||||
'tours.walk.stationNumbered': 'Điểm dừng {number}',
|
||||
'tours.walk.progress': 'Đã ghé {visited}/{total}',
|
||||
|
||||
@@ -260,6 +260,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': '規劃時間',
|
||||
'tours.scope.imported': '匯入時間',
|
||||
'tours.scope.planned': '含休息的計畫',
|
||||
'tours.scope.plannedWithStays': '含停留的計畫',
|
||||
'tours.scope.noMeasures': '尚無已知的距離、高度或時間。',
|
||||
'tours.library.open': '從其他行程引入路線',
|
||||
'tours.library.eyebrow': '引入路線',
|
||||
@@ -462,6 +463,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': '路線規劃給出的站點間步行時間,不含停留時間。',
|
||||
'tours.walk.stays': '停留',
|
||||
'tours.walk.totalAtLeast': '至少 {time}',
|
||||
'tours.walk.totalComputed': '計算值',
|
||||
'tours.walk.stations': '漫步站點',
|
||||
'tours.walk.stationNumbered': '第 {number} 站',
|
||||
'tours.walk.progress': '已到訪 {visited}/{total}',
|
||||
|
||||
@@ -261,6 +261,7 @@ const tours: TranslationStrings = {
|
||||
'tours.scope.routed': '规划时间',
|
||||
'tours.scope.imported': '导入时间',
|
||||
'tours.scope.planned': '含休息的计划',
|
||||
'tours.scope.plannedWithStays': '含停留的计划',
|
||||
'tours.scope.noMeasures': '尚无已知的距离、高度或时间。',
|
||||
'tours.library.open': '从其他行程引入路线',
|
||||
'tours.library.eyebrow': '引入路线',
|
||||
@@ -463,6 +464,7 @@ const tours: TranslationStrings = {
|
||||
'tours.walk.timeEstimatedInfo': '路线规划给出的站点间步行时间,不含停留时间。',
|
||||
'tours.walk.stays': '停留',
|
||||
'tours.walk.totalAtLeast': '至少 {time}',
|
||||
'tours.walk.totalComputed': '计算值',
|
||||
'tours.walk.stations': '漫步站点',
|
||||
'tours.walk.stationNumbered': '第 {number} 站',
|
||||
'tours.walk.progress': '已到访 {visited}/{total}',
|
||||
|
||||
@@ -42,6 +42,9 @@ export const tourLibraryItemSchema = tourListItemSchema
|
||||
max_hiking_difficulty: true,
|
||||
has_waypoints: true,
|
||||
origin: true,
|
||||
station_count: true,
|
||||
station_stay_minutes: true,
|
||||
station_stays_unknown: true,
|
||||
})
|
||||
.extend({ trip: tourLibraryTripSchema });
|
||||
export type TourLibraryItem = z.infer<typeof tourLibraryItemSchema>;
|
||||
|
||||
@@ -237,6 +237,10 @@ export const tourListItemSchema = tourSchema.extend({
|
||||
revision: tourRevisionSchema.optional(),
|
||||
/** CW-03: a city walk's stations, its points that are no shaping points; null for any other type. */
|
||||
station_count: z.number().int().nonnegative().nullable().optional(),
|
||||
/** CW-02: the stays entered at a city walk's stations, summed; null for any other type. */
|
||||
station_stay_minutes: z.number().int().nonnegative().nullable().optional(),
|
||||
/** CW-02: how many of a city walk's stations have no stay entered yet; null for any other type. */
|
||||
station_stays_unknown: z.number().int().nonnegative().nullable().optional(),
|
||||
});
|
||||
export type TourListItem = z.infer<typeof tourListItemSchema>;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user