Files
TREK/shared/src/i18n/id/roadtrip.ts
T
Maurice fa35966ab8 feat(roadtrip): a flight, train or ferry booking seams the drive at its terminals
The road trip routed straight from one stop to the next, whatever stood
between them: a flight booked for the afternoon became an eight-hour drive
on the map, with the hotel reached by road from a town the traveller had
flown out of (issue #2428). The day plan has treated such bookings as
carriers for a while, and the drive now reads them the same way.

A flight, train, ferry, cruise or bus with located terminals is a seam. Its
two terminals are seated among the day's stops where the day plan lists the
booking, as stops of their own: no number, no stay, no kind, not draggable,
and an id below every assignment and every automatic night, because they
stand for none. The road ends at the departure terminal and starts again at
the arrival one; the leg between them is the ride, in the booking's own
mode, with the timetable's minutes and no distance, and no router is ever
asked for it. The departure terminal is pinned a check-in ahead of the
timetable and left on the timetable's minute, so a drive that cannot make
the airport in time is late the way a missed pin is. A ride that lands on a
later day seats its arrival at the start of that day; with connected days
the join between the two is the ride, and with daily travel times set the
ride runs on the booking's clock through the night, with no day end placed
on a flight.

The map draws the ride as the booking's own arc, the one the day plan
already draws, beside the roads. The day's distance and driving time count
the roads only, the range budget spends nothing on a ride, and after one the
car cannot take it starts afresh. The corridor search leaves the ride out
and drops a hit under the flight path; a via cannot be filed against a
terminal, and other ways of driving are offered for the road into a
departure terminal only. The server plan reads the same three tables and
seats the same stops, so calculate_roadtrip answers the same as the rail.

Closes #2428
2026-09-21 16:03:21 +02:00

280 lines
16 KiB
TypeScript

import type { TranslationStrings } from '../types';
const roadtrip: TranslationStrings = {
'roadtrip.stay.portals': 'Cari penginapan',
'roadtrip.stay.portalHint': 'Periksa tujuan, tanggal, dan tamu di portal. Cari secara manual di CHECK24.',
'roadtrip.charging.available': 'tersedia',
'roadtrip.charging.unknown': 'Tidak ada data terpercaya',
'roadtrip.charging.stale': 'Status kedaluwarsa',
'roadtrip.charging.prices': 'Tarif yang dipublikasikan',
'roadtrip.charging.note':
'Tarif publik; pajak, syarat, dan biaya tambahan mungkin berlaku. Harga kartu pengisian Anda bisa berbeda.',
'roadtrip.charging.coverage': 'Data terbuka; cakupan bergantung wilayah dan operator.',
'roadtrip.charging.availability': 'Ketersediaan dan tarif',
'roadtrip.import.title': 'Impor rute Google Maps',
'roadtrip.import.note': 'Perhentian ditambahkan ke hari yang dipilih. TREK menghitung ulang rute.',
'roadtrip.import.unresolved': 'Lokasi tidak ditemukan; perhentian ini akan dilewati.',
'roadtrip.import.day': 'Hari',
'roadtrip.hazards.show': 'Tampilkan area bahaya',
'roadtrip.hazards.current': 'Peringatan terkini',
'roadtrip.hazards.note': 'Peringatan bukan penutupan jalan. Rute tidak berubah.',
'roadtrip.hazards.point': 'Hanya lokasi; area terdampak tidak diketahui.',
'roadtrip.hazards.loading': 'Memuat peringatan…',
'roadtrip.hazards.unavailable': 'Tidak tersedia',
'roadtrip.hazards.offline': 'Luring: peringatan terkini tidak tersedia',
'roadtrip.hazards.partial': 'Cakupan terbatas',
'roadtrip.stops.section': 'Perhentian layanan',
'roadtrip.stops.inDays': 'Tampilkan juga di Hari',
'roadtrip.stops.daysHint':
'Berlaku untuk semua perhentian layanan perjalanan ini. Jika dinonaktifkan, perhentian hanya muncul di Roadtrip. Aktifkan untuk menampilkannya kembali di Hari.',
'roadtrip.window.dragHint':
'Saat online, seret akhir hari di sepanjang rute atau ke suatu tempat; klik kanan untuk memulihkan akhir otomatis.',
'roadtrip.window.resetBoundaries': 'Pulihkan akhir hari otomatis',
'roadtrip.window.endHere': 'Akhiri hari di sini',
'roadtrip.window.endHereHint':
'Anda dapat mengakhiri hari di pemberhentian tertentu melalui detail tempat saat mode Roadtrip dan waktu perjalanan harian aktif.',
'roadtrip.window.endAt': 'Akhir hari',
'roadtrip.window.onRoute': 'Di sepanjang rute',
'roadtrip.window.atStop': 'Di tempat terakhir',
'roadtrip.window.routeHint': 'Berhenti di sepanjang rute saat waktu akhir tercapai.',
'roadtrip.window.stopHint': 'Tetap di tempat terakhir jika tempat berikutnya tidak dapat dicapai sebelum akhir hari.',
'roadtrip.window.legTooLong':
'Satu perjalanan melebihi rentang waktu harian. Tambahkan tempat di sepanjang jalan atau pilih berhenti di rute.',
'roadtrip.window.pointLabel': 'Akhir hari {day} pukul {time}',
'roadtrip.window.title': 'Waktu perjalanan harian',
'roadtrip.window.start': 'Awal hari',
'roadtrip.window.end': 'Akhir hari',
'roadtrip.window.hint':
'Atur kedua waktu untuk merencanakan jeda harian. Kosongkan salah satunya untuk menonaktifkan. Waktu manual diprioritaskan. Hari dihubungkan otomatis.',
'roadtrip.window.invalid': 'Waktu akhir harus setelah waktu mulai.',
'roadtrip.window.stop': 'Akhir hari',
'roadtrip.window.resume': 'Lanjutkan perjalanan',
'roadtrip.window.pointHint': 'Ini perkiraan titik jeda perjalanan Anda untuk bermalam.',
'roadtrip.window.departure': 'Lanjutkan setelah sisa kunjungan pada {time}',
'roadtrip.window.showPoint': 'Tampilkan di peta',
'roadtrip.window.incomplete': 'Semua rute penghubung diperlukan untuk menghitung jeda harian.',
'roadtrip.window.conflict':
'Waktu tetap bertentangan dengan perjalanan dan jeda. Waktu manual tidak berubah; perencanaan otomatis dijeda.',
'roadtrip.window.tooLong':
'Waktu ini memerlukan lebih dari {days} hari tambahan. Pilih rentang waktu harian yang lebih panjang.',
'roadtrip.mode.roadtrip': 'Perjalanan darat',
'roadtrip.mode.days': 'Hari',
'roadtrip.mode.label': 'Tampilan rencana',
'roadtrip.title': 'Perjalanan darat',
'roadtrip.subtitle': 'Perhentian, waktu berkendara, dan waktu tiba untuk perjalanan ini',
'roadtrip.empty.title': 'Belum ada rute',
'roadtrip.stops.label': 'Perhentian di sepanjang jalan',
'roadtrip.stops.remove': 'Hapus perhentian',
'roadtrip.poi.title': 'Sepanjang rute',
'roadtrip.poi.scope': 'Hari',
'roadtrip.poi.looking': 'Mencari',
'roadtrip.poi.searchingHint': 'Mencari di sepanjang rute…',
'roadtrip.poi.found': '{count} di jalan',
'roadtrip.poi.fuel': 'Bahan bakar',
'roadtrip.poi.charging': 'Pengisian daya',
'roadtrip.stop.offRoad': '{distance} dari jalan',
'roadtrip.via.plugin': 'Berhenti di jalan',
'roadtrip.limit.title': 'Pengaturan berkendara',
'roadtrip.limit.legLabel': 'Perjalanan terlama sekali jalan',
'roadtrip.limit.dayLabel': 'Mengemudi per hari',
'roadtrip.limit.rangeLabel': 'Jarak per tangki',
'roadtrip.limit.fillLabel': 'Isi sampai',
'roadtrip.limit.fillFull': 'penuh',
'roadtrip.limit.fillBadge': 'isi sampai {percent} %',
'roadtrip.limit.wearNote': '{percent} % hilang karena usia',
'roadtrip.limit.rangeLabelCharge': 'Jarak per pengisian',
'roadtrip.limit.sectionTrip': 'Perjalanan ini',
'roadtrip.limit.sectionDriving': 'Mengemudi',
'roadtrip.limit.sectionVehicle': 'Kendaraan',
'roadtrip.limit.tankLabel': 'Kapasitas tangki',
'roadtrip.limit.batteryLabel': 'Baterai',
'roadtrip.limit.useLabel': 'Konsumsi',
'roadtrip.limit.wearLabel': 'Penurunan baterai',
'roadtrip.limit.computed': 'Dihitung dari data kendaraan',
'roadtrip.limit.perFill': 'per tangki',
'roadtrip.limit.perCharge': 'per pengisian',
'roadtrip.limit.afterFill': 'Berhenti sampai {percent} %: {distance}',
'roadtrip.limit.fullNote': 'Satu perhentian mengisi penuh',
'roadtrip.limit.rangeEmpty': 'Belum ada jarak jangkau',
'roadtrip.limit.rangeEmptyHint': 'Isi jarak jangkau, atau isi kolomnya dan TREK yang menghitung.',
'roadtrip.limit.specHint': 'Bila diisi, kolom ini menentukan jarak jangkau di atas.',
'roadtrip.limit.vehicleHint': 'Sebutkan jenis kendaraanmu, lalu isi datanya alih-alih jarak jangkau.',
'roadtrip.limit.minutes': 'mnt',
'roadtrip.limit.off': 'mati',
'roadtrip.limit.blockNote': 'Satu blok = {distance}',
'roadtrip.limit.echoOver': '{over} dari {days} hari melebihi batasmu.',
'roadtrip.limit.echoNone': 'Semua {days} hari dalam batasmu.',
'roadtrip.limit.echoDry': '{count} ruas tanpa perhentian terjangkau.',
'roadtrip.limit.echoEmpty': 'Buka sebuah road trip untuk melihat efeknya.',
'roadtrip.limit.specToggle': 'Hitung dari data mobil',
'roadtrip.limit.hint': 'Hanya menghitung waktu mengemudi. Waktu berhenti dan menginap tidak termasuk.',
'roadtrip.limit.legOver': '{time} lebih dari perjalanan terlama',
'roadtrip.limit.dayOver': 'lebih {time}',
'roadtrip.limit.range': '{distance} sejak pengisian terakhir',
'roadtrip.limit.none': 'Belum diatur',
'roadtrip.line.section': 'Garis rute',
'roadtrip.line.connect': 'Hubungkan hari',
'roadtrip.line.dayColors': 'Satu warna per hari',
'roadtrip.line.hint': 'Juga menghitung ruas antara dua hari dan memasukkannya ke hari kedatangan.',
'roadtrip.avoid.section': 'Hindari bila bisa',
'roadtrip.avoid.toll': 'Jalan tol',
'roadtrip.avoid.motorway': 'Jalan bebas hambatan',
'roadtrip.avoid.ferry': 'Feri',
'roadtrip.avoid.hint':
'Ini pembobotan, bukan larangan. Kalau satu perjalanan tidak punya jalan memutar, ia tetap melewatinya dan hari itu memberi tahu.',
'roadtrip.avoid.unavailable':
'Tidak tersedia: instans ini memakai mesinnya sendiri, yang tidak bisa mengecualikan kelas jalan.',
'roadtrip.avoid.badge': '{count} dihindari',
'roadtrip.avoid.missed': '{classes} tak terhindarkan',
'roadtrip.avoid.missedHint':
'Hari ini tidak ada rute memutarnya, jadi perjalanan melewatinya. Hari lain tetap menghindari yang bisa dihindari.',
'roadtrip.refuel.dry': 'Tangki habis di sini',
'roadtrip.refuel.after': 'setelah {distance}',
'roadtrip.limit.vehicleLabel': 'Kamu mengemudi apa',
'roadtrip.limit.vehicleAny': 'Keduanya',
'roadtrip.limit.vehicleCombustion': 'Bensin',
'roadtrip.limit.vehicleElectric': 'Listrik',
'roadtrip.refuel.dryElectric': 'Baterai habis di sini',
'roadtrip.refuel.findElectric': 'Cari pengisian daya',
'roadtrip.refuel.find': 'Cari bahan bakar',
'roadtrip.refuel.again': 'Coba lagi',
'roadtrip.refuel.looking': 'Mencari di sepanjang rute…',
'roadtrip.refuel.spare': 'sisa {distance}',
'roadtrip.refuel.add': 'Tambahkan {name} sebagai perhentian isi bahan bakar',
'roadtrip.refuel.addElectric': 'Tambahkan {name} sebagai perhentian pengisian daya',
'roadtrip.refuel.none': 'Tidak ada yang ditemukan di ruas yang terjangkau.',
'roadtrip.refuel.incomplete': 'Pencarian terpotong, jadi ruas ini belum diperiksa sepenuhnya.',
'roadtrip.refuel.failed': 'Pencarian tempat tidak menjawab.',
'roadtrip.stop.none': 'Sebuah tujuan',
'roadtrip.stay.mode.pause': 'Istirahat',
'roadtrip.stay.mode.night': 'Menginap',
'roadtrip.stay.nightAdded': 'Ditambahkan sebagai menginap',
'roadtrip.stay.nightAction': 'Tambahkan sebagai menginap',
'roadtrip.stop.makeService': 'Jadikan perhentian di jalan',
'roadtrip.stop.changeKind': 'Ubah jenis perhentian',
'roadtrip.stop.backToDestination': 'Kembali jadi tujuan',
'roadtrip.poi.anySocket': 'Semua colokan',
'roadtrip.poi.anyPower': 'Semua daya',
'roadtrip.poi.free': 'Gratis',
'roadtrip.poi.wholeDay': 'Sepanjang hari',
'roadtrip.poi.midLeg': 'Di tengah, {from} ke {to}',
'roadtrip.track.title': 'Hari {number} mengikuti jalur',
'roadtrip.track.hint': 'Buat hari ini mengikuti jalur yang diimpor',
'roadtrip.track.badge': 'Jalur',
'roadtrip.track.untitled': 'Jalur tanpa nama',
'roadtrip.track.empty': 'Tidak ada jalur di perjalanan ini',
'roadtrip.track.emptyHint': 'Impor berkas GPX atau KML dan jalurnya akan muncul di sini.',
'roadtrip.track.length': 'panjang {distance}',
'roadtrip.track.gap': '{distance} dari hari ini',
'roadtrip.track.onDay': 'sepanjang hari ini',
'roadtrip.track.explain':
'Perjalanan ditarik ke jalur dengan beberapa titik lintas. Titik lintas yang ada di etape tersebut akan diganti.',
'roadtrip.track.action': 'Ikuti jalur ini',
'roadtrip.track.working': 'Menyesuaikan perjalanan dengan jalur, putaran {round}',
'roadtrip.track.done': '{count} titik lintas ditempatkan. Perjalanan tetap dalam {distance} dari jalur.',
'roadtrip.track.capped':
'{count} titik lintas ditempatkan. Di titik terlebar, perjalanan berjarak {distance} dari jalur.',
'roadtrip.track.already': 'Perjalanan sudah mengikuti jalur ini.',
'roadtrip.track.errorRoute': 'Layanan rute tidak menjawab.',
'roadtrip.track.errorSave': 'Titik lintas tidak dapat disimpan.',
'roadtrip.track.clear': 'Hapus {count} titik lintas',
'roadtrip.track.current': 'Saat ini mengikuti {name}',
'roadtrip.poi.rest': 'Tempat istirahat',
'roadtrip.poi.campsite': 'Perkemahan',
'roadtrip.poi.food': 'Makanan',
'roadtrip.poi.sights': 'Objek wisata',
'roadtrip.poi.within': 'Dalam',
'roadtrip.poi.filter': 'Saring menurut nama',
'roadtrip.poi.noMatch': 'Tidak ada di rute yang cocok dengan “{name}”.',
'roadtrip.poi.noneMatchFilters': 'Tidak ada di sepanjang rute yang cocok dengan filter ini.',
'roadtrip.poi.foundFiltered': '{count} dari {total} di rute',
'roadtrip.poi.truncated':
'Di {count} ruas ada lebih banyak daripada yang muat dalam satu jawaban — persempit koridor untuk melihat sisanya.',
'roadtrip.poi.search': 'Cari',
'roadtrip.poi.searching': 'Mencari {done} dari {total}',
'roadtrip.poi.capped': 'Rute panjang — hanya bagian pertama yang dicari.',
'roadtrip.poi.partial': '{count} ruas tidak dapat dicari — pencarian tempat tidak merespons.',
'roadtrip.poi.failed': 'Pencarian tempat sedang tidak merespons.',
'roadtrip.poi.empty': 'Pilih yang Anda butuhkan lalu cari.',
'roadtrip.poi.add': 'Tambah',
'roadtrip.poi.offRoute': '{distance} dari rute',
'roadtrip.poi.atStart': 'dekat titik awal',
'roadtrip.poi.alongRoute': 'setelah {distance}',
'roadtrip.poi.clearResults': 'Hapus hasil',
'roadtrip.poi.addManual': 'Tambah manual',
'roadtrip.poi.addManualShort': 'Manual',
'roadtrip.poi.manualHint':
'Pencarian tempat tidak menemukan setiap pengisian daya atau pompa bahan bakar. Cari satu menurut nama dan tentukan di bagian perjalanan mana ia ditempatkan.',
'roadtrip.poi.addBetween': 'Tambahkan di antara',
'roadtrip.poi.manualOffRoute': '{distance} dari rute, jadi periksa ia masuk ke ruas yang mana.',
'roadtrip.poi.manualAppend': 'Belum ada rute yang dihitung, jadi ia masuk di akhir hari {number}.',
'roadtrip.poi.manualNoResults': 'Tidak ada tempat yang ditemukan.',
'roadtrip.poi.manualNoCoords':
'Tanpa posisi, ia masuk ke daftar tempat perjalanan, bukan ke salah satu ruas berkendara. Pilih satu dari hasil pencarian di atas, atau isi koordinatnya.',
'roadtrip.summary.distance': 'Jarak',
'roadtrip.summary.driving': 'Waktu berkendara',
'roadtrip.alt.ask': 'Rute lain',
'roadtrip.alt.title': 'Rute untuk ruas ini',
'roadtrip.alt.loading': 'Menanyakan server rute…',
'roadtrip.alt.onlyOne': 'Hanya ada satu rute yang masuk akal untuk ruas ini.',
'roadtrip.alt.failed': 'Server rute sedang tidak merespons.',
'roadtrip.alt.current': 'Saat ini',
'roadtrip.alt.fastest': 'Tercepat',
'roadtrip.alt.slower': '{time} lebih lama',
'roadtrip.alt.quicker': '{time} lebih cepat',
'roadtrip.alt.otherEngine': 'Waktu dihitung mesin penghindaran, bukan mesin utama.',
'roadtrip.day': 'Hari {number}',
'roadtrip.quietDay.empty': 'Belum ada perhentian — jatuhkan di sini',
'roadtrip.quietDay.one': 'Sejauh ini hanya {name} — jatuhkan perhentian di sini',
'roadtrip.leg.driveText': '{distance} dalam {time}',
'roadtrip.day.stopCount': '{count} perhentian',
'roadtrip.day.fold': 'Lipat',
'roadtrip.day.folded': 'Terlipat',
'roadtrip.stop.stayShort': 'Singgah',
'roadtrip.stop.fillTitle': 'Isi sampai',
'roadtrip.stop.fillGives': 'sekitar {distance} dari sini',
'roadtrip.stop.fillNoRange': 'Isi jarak jangkau untuk melihat hasilnya.',
'roadtrip.stop.fillDefault': 'Pakai bawaan saya',
'roadtrip.stop.fillSet': 'Atur seberapa penuh perhentian ini mengisi',
'roadtrip.leg.pending': 'Tidak ada rute',
'roadtrip.stop.addTitle': 'Tambahkan sebagai perhentian',
'roadtrip.stop.kind': 'Jenis perhentian',
'roadtrip.stop.landsOn': 'Hari {day}, sebagai perhentian {position}',
'roadtrip.stop.duplicate': '“{name}” sudah ada di perjalanan ini.',
'roadtrip.stop.moreDetails': 'Detail lainnya',
'roadtrip.stop.stay': 'Waktu di perhentian ini',
'roadtrip.stop.pinned': 'Waktu yang Anda tetapkan',
'roadtrip.stop.computed': 'Dihitung dari waktu berkendara',
'roadtrip.stop.endIsLeave': 'Dalam perjalanan darat, keberangkatan pada waktu ini.',
'roadtrip.via.hint': 'Seret untuk mengubah rute, klik kanan untuk menghapus',
'roadtrip.warn.late': 'Tiba {minutes} menit setelah waktu yang ditetapkan',
'roadtrip.warn.missedLeave': 'Tiba {minutes} menit setelah waktu berangkat yang ditetapkan',
'roadtrip.warn.overnight': 'Hari berikutnya',
'roadtrip.spill.title': 'Dari hari {number}',
'roadtrip.spill.departs': 'berangkat {time}',
'roadtrip.summary.stops': 'Perhentian',
'roadtrip.stay.add': 'Atur lama singgah',
'roadtrip.stay.none': 'Tanpa singgah',
'roadtrip.stay.custom': 'Menit',
'roadtrip.stay.arrive': 'Tiba',
'roadtrip.stay.leave': 'Berangkat',
'roadtrip.stay.until': 'sampai {time}',
'roadtrip.stay.leavesAt': 'Kunjungan ini punya waktu selesai, jadi perjalanan berlanjut pukul {time}.',
'roadtrip.stay.dayEndsFirst':
'Hari perjalanan berakhir sebelum pukul {time}, jadi perjalanan berlanjut keesokan paginya.',
'roadtrip.stay.clearLeave': 'Hapus waktu selesai',
'roadtrip.alt.noMotorway': 'Tanpa jalan tol cepat',
'roadtrip.alt.noToll': 'Tanpa tol',
'roadtrip.alt.noFerry': 'Tanpa feri',
'roadtrip.summary.partial': 'Sisa perjalanan masih dihitung',
'roadtrip.stay.releaseTitle': 'Hapus menginap semalam?',
'roadtrip.stay.releaseBody': 'Malam di “{name}” akan dihapus. Perhentian tetap ada di perjalanan sebagai jeda.',
'roadtrip.stay.releaseBookedBody': 'Malam di “{name}” akan dihapus bersama pemesanan “{booking}” dan pengeluaran yang terkait. Perhentian tetap ada di perjalanan sebagai jeda.',
'roadtrip.stay.releaseAction': 'Jadikan jeda',
'roadtrip.ride.departure': 'Berangkat {time}',
'roadtrip.ride.arrival': 'Tiba {time}',
'roadtrip.ride.open': 'Buka pemesanan',
'roadtrip.ride.beThere': 'Sudah di sana sebelum {time}',
};
export default roadtrip;